Consulta

03/03/2004 - 12:54 por Sirox | Informe spam
Hola a todos,

Tengo una tabla:

Codigo linea1 linea2 linea3 linea4 linea5
Icann 1 90 180 200 340
Icann 2 70 100 280 310
Icann 3 40 130 290 670
Icann 4 60 260 240 710
StrDu 8 50 340 550 210
StrDu 9 50 340 570 280
StrDu 10 50 340 590 410
BlnLi 80 50 340 550 210
BlnLi 85 60 260 240 710
BlnLi 86 50 340 550 210
BlnLi 87 50 340 570 280
BlnLi 90 60 260 240 710
BlnLi 91 50 340 550 210
DdnJu 1 50 340 570 280

Ando buscando la forma de seleccionar todas las últimas lineas de registros
cuyos códigos sean distintos, es decir, para este caso me debería
seleccionar:

Icann 4 60 260 240 710
StrDu 10 50 340 590 410
BlnLi 91 50 340 550 210
DdnJu 1 50 340 570 280


Espero haberme explicado, muchas gracias a todos.
Sirox

Preguntas similare

Leer las respuestas

#6 Liliana Sorrentino
04/03/2004 - 16:26 | Informe spam
Hola Javier!
Estaba poniendo al día el trabajo que no hice en los 40 días de vacaciones
el año pasado...
Cariños... Liliana.

"Javier Loria" escribió en el mensaje
news:#$
Hola:
Si no estaba muerta, andaba de PARRANDA.

Saludos ,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
Liliana Sorrentino escribio:
> SELECT T1.Codigo , T1.Descripcion, T2deriv.Linea, T1.Manual,
> T1.Automatico, T2.Letra
> FROM Tabla1 AS T1
> INNER JOIN Tabla2 AS T2 ON T1.Codigo = T2.Codigo
> INNER JOIN (SELECT Codigo, MAX(Num_Linea) AS Linea FROM Tabla2 GROUP
> BY Codigo) AS T2deriv
> ON T2.Codigo=T2deriv.Codigo AND T2.Num_Linea = T2deriv.Linea
>
> Saludos... Liliana.
>
> "Sirox" escribió en el mensaje
> news:
>> Muchas gracias Javier!,
>>
>> Ahora tengo otra duda similar pero con 2 tablas... expongo el caso:
>>
>> TABLA1
>> -Codigo (varchar) (key)
>> -Descripcion (varchar)
>> -Manual (varchar)
>> -Automatico (varchar)
>>
>> TABLA2
>> -Codigo (varchar)(key)
>> -num_linea (int)(key)
>> -inicio (int)
>> -fin (int)
>> -ultimo (int)
>> -fecha (datetime)
>> -incr (int)
>> -letra (varchar)
>>
>> Intento hacer lo mismo (que muestre únicamente las lineas que
>> contengan el ultimo número de linea (MAX(num_linea)) con su codigo
>> correspondiente y todos los campos que le correspondan de la tabla1
>> y tabla2) pero mostrando datos de las dos tablas, si uso un INNER
>> JOIN no puedo usar alias...???
>>
>> Con una tabla ya lo he conseguido pero al hacerlo con 2 a ver
>> si salgo del "bache" de una vez...
>>
>>
>> Gracias,
>> Sirox
>>
>> "Javier Loria" escribió en el mensaje
>> news:
>>> Hola:
>>> Asumiendo que la lineas deseadas son:
>>> > >>> SELECT Codigo, MAX(Linea1)
>>> FROM Tabla
>>> > >>> El Select lo puedes construir, de la siguiente forma:
>>> > >>> SELECT T.Codigo
>>> , T.Linea1
>>> , T.Linea2
>>> , T.Linea3
>>> , T.Linea4
>>> , T.Linea5
>>> FROM Tabla AS T
>>> JOIN (SELECT Codigo, MAX(Linea1) AS Linea
>>> FROM Tabla) AS T2
>>> ON T.Codigo=T2.Codigo
>>> AND T.Linea1=T2.Linea1
>>> > >>> Espero se entienda,
>>>
>>>
>>> Javier Loria
>>> Costa Rica
>>> Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
>>> que pueda ser copiado y pegado al Query Analizer.
>>> La version de SQL y Service Pack tambien ayuda.
>>>
>>> Sirox escribio:
>>>> Hola a todos,
>>>>
>>>> Tengo una tabla:
>>>>
>>>> Codigo linea1 linea2 linea3 linea4 linea5
>>>> Icann 1 90 180 200 340
>>>> Icann 2 70 100 280 310
>>>> Icann 3 40 130 290 670
>>>> Icann 4 60 260 240 710
>>>> StrDu 8 50 340 550 210
>>>> StrDu 9 50 340 570 280
>>>> StrDu 10 50 340 590 410
>>>> BlnLi 80 50 340 550 210
>>>> BlnLi 85 60 260 240 710
>>>> BlnLi 86 50 340 550 210
>>>> BlnLi 87 50 340 570 280
>>>> BlnLi 90 60 260 240 710
>>>> BlnLi 91 50 340 550 210
>>>> DdnJu 1 50 340 570 280
>>>>
>>>> Ando buscando la forma de seleccionar todas las últimas lineas de
>>>> registros cuyos códigos sean distintos, es decir, para este caso me
>>>> debería seleccionar:
>>>>
>>>> Icann 4 60 260 240 710
>>>> StrDu 10 50 340 590 410
>>>> BlnLi 91 50 340 550 210
>>>> DdnJu 1 50 340 570 280
>>>>
>>>>
>>>> Espero haberme explicado, muchas gracias a todos.
>>>> Sirox


Respuesta Responder a este mensaje
#7 kitten
04/03/2004 - 20:06 | Informe spam
Muchísimas gracias a !!! así da gusto trabajar :) voy a ver si me hago
un poco con esto de SQL y en vez de preguntar puedo ayudar.

ASIAS DE NUEVO!!!
Sirox

"Liliana Sorrentino" escribió en el mensaje
news:
Hola Javier!
Estaba poniendo al día el trabajo que no hice en los 40 días de vacaciones
el año pasado...
Cariños... Liliana.

"Javier Loria" escribió en el mensaje
news:#$
> Hola:
> Si no estaba muerta, andaba de PARRANDA.
>
> Saludos ,
>
>
> Javier Loria
> Costa Rica
> Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
> que pueda ser copiado y pegado al Query Analizer.
> La version de SQL y Service Pack tambien ayuda.
> Liliana Sorrentino escribio:
> > SELECT T1.Codigo , T1.Descripcion, T2deriv.Linea, T1.Manual,
> > T1.Automatico, T2.Letra
> > FROM Tabla1 AS T1
> > INNER JOIN Tabla2 AS T2 ON T1.Codigo = T2.Codigo
> > INNER JOIN (SELECT Codigo, MAX(Num_Linea) AS Linea FROM Tabla2 GROUP
> > BY Codigo) AS T2deriv
> > ON T2.Codigo=T2deriv.Codigo AND T2.Num_Linea = T2deriv.Linea
> >
> > Saludos... Liliana.
> >
> > "Sirox" escribió en el mensaje
> > news:
> >> Muchas gracias Javier!,
> >>
> >> Ahora tengo otra duda similar pero con 2 tablas... expongo el caso:
> >>
> >> TABLA1
> >> -Codigo (varchar) (key)
> >> -Descripcion (varchar)
> >> -Manual (varchar)
> >> -Automatico (varchar)
> >>
> >> TABLA2
> >> -Codigo (varchar)(key)
> >> -num_linea (int)(key)
> >> -inicio (int)
> >> -fin (int)
> >> -ultimo (int)
> >> -fecha (datetime)
> >> -incr (int)
> >> -letra (varchar)
> >>
> >> Intento hacer lo mismo (que muestre únicamente las lineas que
> >> contengan el ultimo número de linea (MAX(num_linea)) con su codigo
> >> correspondiente y todos los campos que le correspondan de la tabla1
> >> y tabla2) pero mostrando datos de las dos tablas, si uso un INNER
> >> JOIN no puedo usar alias...???
> >>
> >> Con una tabla ya lo he conseguido pero al hacerlo con 2 a ver
> >> si salgo del "bache" de una vez...
> >>
> >>
> >> Gracias,
> >> Sirox
> >>
> >> "Javier Loria" escribió en el mensaje
> >> news:
> >>> Hola:
> >>> Asumiendo que la lineas deseadas son:
> >>> > > >>> SELECT Codigo, MAX(Linea1)
> >>> FROM Tabla
> >>> > > >>> El Select lo puedes construir, de la siguiente forma:
> >>> > > >>> SELECT T.Codigo
> >>> , T.Linea1
> >>> , T.Linea2
> >>> , T.Linea3
> >>> , T.Linea4
> >>> , T.Linea5
> >>> FROM Tabla AS T
> >>> JOIN (SELECT Codigo, MAX(Linea1) AS Linea
> >>> FROM Tabla) AS T2
> >>> ON T.Codigo=T2.Codigo
> >>> AND T.Linea1=T2.Linea1
> >>> > > >>> Espero se entienda,
> >>>
> >>>
> >>> Javier Loria
> >>> Costa Rica
> >>> Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
> >>> que pueda ser copiado y pegado al Query Analizer.
> >>> La version de SQL y Service Pack tambien ayuda.
> >>>
> >>> Sirox escribio:
> >>>> Hola a todos,
> >>>>
> >>>> Tengo una tabla:
> >>>>
> >>>> Codigo linea1 linea2 linea3 linea4 linea5
> >>>> Icann 1 90 180 200 340
> >>>> Icann 2 70 100 280 310
> >>>> Icann 3 40 130 290 670
> >>>> Icann 4 60 260 240 710
> >>>> StrDu 8 50 340 550 210
> >>>> StrDu 9 50 340 570 280
> >>>> StrDu 10 50 340 590 410
> >>>> BlnLi 80 50 340 550 210
> >>>> BlnLi 85 60 260 240 710
> >>>> BlnLi 86 50 340 550 210
> >>>> BlnLi 87 50 340 570 280
> >>>> BlnLi 90 60 260 240 710
> >>>> BlnLi 91 50 340 550 210
> >>>> DdnJu 1 50 340 570 280
> >>>>
> >>>> Ando buscando la forma de seleccionar todas las últimas lineas de
> >>>> registros cuyos códigos sean distintos, es decir, para este caso me
> >>>> debería seleccionar:
> >>>>
> >>>> Icann 4 60 260 240 710
> >>>> StrDu 10 50 340 590 410
> >>>> BlnLi 91 50 340 550 210
> >>>> DdnJu 1 50 340 570 280
> >>>>
> >>>>
> >>>> Espero haberme explicado, muchas gracias a todos.
> >>>> Sirox
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida