Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/10/2007, 00:31
mahoni
 
Fecha de Ingreso: julio-2006
Mensajes: 145
Antigüedad: 17 años, 10 meses
Puntos: 0
consulta fecha minima

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!!!

Última edición por mahoni; 15/10/2007 a las 00:33 Razón: subscribirme