Estoy con una consulta que me supera, pero creo que puede ser facil:
Esta es la tabla(Paradas):
Codigo Ficticio Tipo Nombre Fecha_Inicio Fecha_Fin
X000 No B Primera 16/09/2006 20/03/2007
Y000 No B Primera 20/03/2007
E111 No B Segunda 16/02/2006 20/02/2007
F111 No B Segunda 20/02/2007
S222 No B Tercera 11/01/2006
T222 No B Tercera 11/01/2007
Info:
Las paradas tienen todas distinto codigo, pero puede haber 2 con el mismo nombre(se está haciendo una sustitucion).
Se quiere mostrar las paradas que no tengan Fecha_Fin(campo vacio):
SELECT Distinct(CODIGO), NOMBRE, TIPO, FECHA_FIN FROM parada where TIPO<>'b' and FECHA_FIN is null and FICTICIO='No' ORDER BY NOMBRE
Hasta aquí bien.Pero el problema está que en unos dias estan operativas 2 paradas con el mismo nombre, y solamente se quiere mostrar una de esas 2.LA PARADA QUE TENGA LA FECHA DE INICIO MAS ANTIGUA.En este caso el problema sería:S222 y T222.Tendría que mostrar S222.
He probado esto:
SELECT Distinct(CODIGO), NOMBRE, TIPO, FECHA_FIN FROM parada where TIPO<>'P' and FECHA_FIN is null and FICTICIO='N' and FECHA_INICIO <= (select MIN(FECHA_INICIO),NOMBRE from parada where TIPO<>'P' and FICTICIO='N' group by NOMBRE) ORDER BY NOMBRE
Buffff, creo que esta ultima consulta es un fregao.Me casca por todos laos.
Espero haberme explicado bien.
Gracias por vuestra ayuda!!!