SQL - DUDA CON MAX Y MIN

 
Vista:

DUDA CON MAX Y MIN

Publicado por KEVIN HARNOLLD VECHARA AGUILA (2 intervenciones) el 06/01/2008 17:10:35
Tengo la siguiente consulta:

SELECT MAX(CODIGO) AS CODIGO ,ACCION;
FROM _TABLA1 WHERE CODIGO=14648 OR CODIGO=14658;
AND CODIGO IN (SELECT MAX(CODIGO) FROM TABLA1)

ESTAN ESTOS DOS REGISTROS

CODIGO ACCION
14648 'EL MENOR'
14658 'EL MAYOR'

Y los que busco es que me muestre el codigo mayor conjuntamente con su accion.

Y si le agrego el group by me saca el mismo resultado (14648)

Gracuas
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:DUDA CON MAX Y MIN

Publicado por Fernando (8 intervenciones) el 12/01/2008 11:14:28
Hola, primero q nada, si usás ORs y ANDs usá paréntesis para determinar la prioridad de los operadores (o así como está lo querias vos?), en este caso:

WHERE (CODIGO=14648 OR CODIGO=14658)
AND CODIGO IN (SELECT MAX(CODIGO) FROM TABLA1)

Segundo:

ya hiciste el max en la parte del IN, ya no necesitás tomar el MAX en el SELECT externo, esto tendría q funcionar:

SELECT CODIGO ,ACCION;
FROM _TABLA1 WHERE (CODIGO=14648 OR CODIGO=14658)
AND CODIGO IN (SELECT MAX(CODIGO) FROM TABLA1)

igualmente no le veo sentido a la condición CODIGO=14648 OR CODIGO=14658, pero bueno, tal vez la estés generando dinámicamente o algo asi y por eso necesitas esa parte, pero creo q tal vez sea mejor incluirla en la parte del SELECT MAX... aunq no conozco la lógica de lo q estás resolviendo con esto

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar