Delphi - Como Consultar

 
Vista:

Como Consultar

Publicado por Nickname (29 intervenciones) el 10/05/2003 18:45:01
Hola
Como podria hacer este tipo de consultas en Delphi:

Consultar Fechas de 01/05/2003 a 10/05/2003
Consultar Meses del 01/03/2003 al 01/05/2003

Ayudenme.....
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:Como Consultar

Publicado por Ernesto De Spirito (706 intervenciones) el 12/05/2003 09:05:39
> Consultar Fechas de 01/05/2003 a 10/05/2003

SELECT * FROM tabla
WHERE tabla.fecha BETWEEN "05/01/2003" AND "05/10/2003"

Nota que en los distintos SQL, las fechas van siempre en formato MM/DD/AAAA (algunos motores soportan AAAA.MM.DD) y los delimitadores para los literales de fecha varían según el motor de que se trate:

#05/25/2003# --> Access
{05/25/2003} --> FoxPro
"05/25/2003" y/o '05/30/2003' --> La mayoría

> Consultar Meses del 01/03/2003 al 01/05/2003

En el ejemplo de arriba, ¿quieres consultar del 1 de Marzo al 30 de Abril o al 31 de Mayo? Como sea, una forma es como la consulta anterior, pero poniendo la fecha límite correspondiente. Ej:

SELECT * FROM tabla
WHERE tabla.fecha BETWEEN "03/01/2003" AND "05/31/2003"

Otra forma es obtener los meses y años de las fechas y comparar esos valores. Si las fechas son del mismo año, la consulta es sencilla.

SELECT * FROM tabla
WHERE (EXTRACT(YEAR FROM tabla1.fecha)=2003)
AND (EXTRACT(MONTH FROM tabla1.fecha) BETWEEN 3 AND 5)

En vez de EXTRACT(YEAR FROM fecha) y EXTRACT(MONTH FROM fecha) como es el caso de Paradox e Interbase, muchos motores usan YEAR(fecha) y MONTH(fecha), o GETYEAR(fecha) y GETMONTH(fecha).

Espero haber podido servirte de algo.

Ernesto De Spirito
http://www.latiumsoftware.com/es/index.php
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