Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MySQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=21)
-   -   Seleccionar un campo dependiendo de su valor (https://www.clubdelphi.com/foros/showthread.php?t=61600)

Alexis De la Cr 13-11-2008 19:46:24

Seleccionar un campo dependiendo de su valor
 
Estimados Colegas del foro:

De antemano, muchas Gracias por Permitirme particpar en este foro.

Solicito su ayuda para armar una consulta MySQL, que me permita seleccionar un campo de 4 posibles dependiendo de su valor tratare de explicarles:

Campo1 Campo2 Campo3 Campo4
0 0 10 0

solo uno de ellos tiene un valor mayor 0 y la consulta en este caso deberia trarme el valor del campo que es mayor a 0 en este caso Campo3


Campo1 Campo2 Campo3 Campo4
20 0 0 0

en este ejemplo la consulta me debe devolver el campo con el valor mayor a 0 en este ejemplo campo1


Estoy tratando de Armar la consulta con la Sentencia CASE WHEN pero no me jala, me dice que hay un error de sintaxis


la consulta es la siguiente

Código SQL [-]
SELECT catalogo.*, CASE WHEN (catalogo.campo1>0) then () as campox CASE WHEN (catalogo.campo2>0) then () as campox WHEN (catalogo.campo3>0) then () as campox  WHEN (catalogo.campo4>0) then () as campox END FROM catalogo

la teroia dice lo siguiente

CASE WHEN [condición1] THEN resultado1
[WHEN [condicióni] THEN resultadoi ...]
[ELSE resultado] ENDNo se si esta sea la mejor forma de hacerlo, o quizas con la instruccion if,
realmente no tengo idea, pero le voy a seguir machacando, claro que si alguien sabe, pues bienvenida sea su ayuda

Saludos a todos

TOPX 13-11-2008 19:56:32

Estimado,

Entonces así:

Código SQL [-]
  SELECT 
    CASE 
      WHEN CAMPO1 > 0 THEN CAMPO1
      WHEN CAMPO2 > 0 THEN CAMPO2
      WHEN CAMPO3 > 0 THEN CAMPO3
    END AS CAMPOX
  FROM CATALOGO

Alexis De la Cr 13-11-2008 20:58:44

TopX, gracias mi hermano, me has ahorrado muchas neuronas muertas.... eres un grande


Saludos


La franja horaria es GMT +2. Ahora son las 09:02:03.

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