SQL Server - SELECT MAX NO LO ENTIENDO

 
Vista:
sin imagen de perfil

SELECT MAX NO LO ENTIENDO

Publicado por ANTONIO (15 intervenciones) el 01/12/2008 21:05:40
VEREIS AMIGOS TENGO UNA BASE DE DATOS ACCESS CON TRES REGISTROS:

COD_COR CHIP
100 12N3NEN
200

COMO PODEIS COMPROBAR EL SEGUNDO REGISTRO TIENE EL CAMPO CHIP EN BLANCO
BUENO YO QUIERO CREAR UNA COSULTA QUE ME BUSQUE EL MAXIMO VALOR DEL CAMPO COD_COR Y QUE ADEMAS EL CAMPO CHIP NO SEA NULO CON LO QUE HAGO LO SIGUIENTE:

SELECT MAX(COD_COR) AS CODIGO FROM CARRERA WHERE CHIP IS NOT NULL

BIEN PUES ME DEVUELVE EL VALOR 200 Y NO LO ENTIENDO.

SIN EMBARGO SI PONGO
SELECT MAX(COD_COR) AS CODIGO FROM CARRERA WHERE CHIP IS NOT NULL GROUP BY COD_COR
ENTONCES ME DEVUELVE EL 100, PERO EL PROBLEMA ES QUE SI CREO OTRO REGISTRO CON EL VALOR 101 EN EL COD_COR Y CON EL CHIP 23DFDSD, ME AL EJECUTAR LA CONSULTA ME SIGUE DEVOLVIENDO EL VALOR 100 , CUANDO YO PIENSO QUE DEBERÍA DEVOLVERME EL 101.
UFF NO LO ENTIENDO
AYUDADME POR FAVOR.
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:SELECT MAX NO LO ENTIENDO

Publicado por Isaias (3308 intervenciones) el 02/12/2008 01:21:14
Deberias seguir el hilo de la consulta que ya habias realizado aqui mismo.

Elimina el GROUP BY, no lo requieres.
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
sin imagen de perfil

RE:SELECT MAX NO LO ENTIENDO

Publicado por ANTONIO (15 intervenciones) el 02/12/2008 10:50:49
Efectivamente Isaias pero si elimino el group by entonces me devuelve el valor 200 cuando el campo chip esta en blanco con lo cual no deberia devolverme el 200.
No lo entiendo la verdad
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
sin imagen de perfil

RE:SELECT MAX NO LO ENTIENDO

Publicado por ANTONIO (15 intervenciones) el 02/12/2008 12:20:22
Vale ya lo he solucinado lo he puesto asi y si que me funciona
SELECT max(COD_COR)AS DORSAL FROM corredor where len(trim(chip))>0"

Saludos y gracias
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

RE:SELECT MAX NO LO ENTIENDO

Publicado por Isaias (3308 intervenciones) el 03/12/2008 01:44:53
Recuerda siempre, no es lo mismo un campo VACIO (blanco), que un campo con valor NULL.

Puedes hacer uso tambien de: WHERE LEN(columna) > 0
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
sin imagen de perfil

RE:SELECT MAX NO LO ENTIENDO

Publicado por ANTONIO (15 intervenciones) el 03/12/2008 09:13:31
Gracias Isaias eres lo maximo.
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

RE:SELECT MAX NO LO ENTIENDO

Publicado por Isaias (3308 intervenciones) el 04/12/2008 03:51:58
Ojala que te oyeran las compañias en Mexico, aun ando en busca de un buen trabajo.

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