Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-01-2008
Avatar de Cecil
Cecil Cecil is offline
Miembro
 
Registrado: may 2007
Posts: 97
Poder: 17
Cecil Va por buen camino
Consulta que muestre Si o No segun el valor

Hola, necesito encontrar la forma de saber como, en una consulta SQL, puedo mostrar literalmente "Si" si un campo vale 1 ó "No" si dicho campo vale 0. Agradezco vuestra ayuda. Un saludo.
__________________
"There is nothing either good or bad, but thinking makes it so" William Shakespeare.
Responder Con Cita
  #2  
Antiguo 16-01-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Depende del motor.

En firebird (y otros motores que cumplen con sql'92):

Código SQL [-]
select case campo
         when 0 then 'No'
         when 1 then 'Si'
         else 'Ni si, ni no'
       end DescCampo
  from tabla
 where condiciones;

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate

Última edición por jachguate fecha: 16-01-2008 a las 07:42:15.
Responder Con Cita
  #3  
Antiguo 16-01-2008
santi33a santi33a is offline
Miembro
 
Registrado: jun 2005
Posts: 208
Poder: 19
santi33a Va por buen camino
tambien lo puedes hacer con el evento OnGetText del campo desde Delphi

Código Delphi [-]
 if Sender.value = 1 then
  Text := 'Si'
 else Text := 'No';
Responder Con Cita
  #4  
Antiguo 16-01-2008
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Cita:
Empezado por jachguate Ver Mensaje
Depende del motor.

En firebird (y otros motores que cumplen con sql'92):

Código SQL [-]
select case campo
         when 0 then 'No'
         when 1 then 'Si'
         else 'Ni si, ni no'
       end DescCampo
  from tabla
 where condiciones;

Hasta luego.

Mostrare la siguiente alternativa, pero debo aclarar 3 cosas:

1) Segun entiendo, no esta dentro del standar.
2) Solo es un swicth (Solo es un valor u otro), pero no cabe la posibilidad de evaluar un tercer valor como si es posible con el ejemplo de jachguate.
3) Solo es valido a partir de la versión 2 de FireBird.

Código SQL [-]
select iif(campo=0, 'No', 'Si') from tabla where condiciones;
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #5  
Antiguo 17-01-2008
Avatar de Cecil
Cecil Cecil is offline
Miembro
 
Registrado: may 2007
Posts: 97
Poder: 17
Cecil Va por buen camino
Muchas gracias, he usado el ejemplo de jachguate y me ha funcionado a las mil maravillas.
__________________
"There is nothing either good or bad, but thinking makes it so" William Shakespeare.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Hacer que una columna de un DbGrid aparezca distinta según valor Aprendiendo OOP 11 30-11-2018 14:47:20
Valor en celda de DBGrid según código en base de datos Gabo SQL 19 01-10-2007 09:08:00
Imprimir dato en columnas diferentes según valor del dato saldanaluis Impresión 2 06-09-2007 00:17:32
Cambiar color en panel de DBCtrlGrid segun valor de un atributo akinom38 Varios 4 23-01-2006 14:25:30
Repetir registro segun valor de un campo yusnerqui SQL 2 13-03-2005 02:14:40


La franja horaria es GMT +2. Ahora son las 01:00:11.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi