Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Sentencia SQL (https://www.clubdelphi.com/foros/showthread.php?t=64624)

emeritos 11-04-2009 11:35:37

Sentencia SQL
 
Hola Dilferos.
Estoy utilizando el Delphi 7 y MyDac y necesito ayuda para emntender una sentencia de SQL.

En Delphi si ponenos Date() + 365, es decir la suma de una fecha y un entero el resultado, en este caso, es sumar a la fecha 365 dias (el entero), esto mismo quiero hacer en SQL y la sentencia que tengo es:

SELECT fecha
FROM fichero
WHERE fecha + 365 >= date()

Lo que no entiendo es que hace fecha + 365, por que no le suma esos dias a la fecha. ¿ Como lo puedo hacer?

Gracias.

marcoszorrilla 11-04-2009 13:42:46

Me da la impresión que lo que está fallando es Date().


Código SQL [-]
SELECT fecha + 365 
FROM fichero

Creo que funcione, con esto confirmamos que el fallo está en Date, por ejemplo Paradox no admite el uso de Date como SQL que yo recuerde.

Pero si una variable que contenga la fecha.

Código Delphi [-]
Var
MiFecha:Tdate;
begin
MiFecha:=Date + 365;
Query1.Close;
Query1.Sql.Clear;
Query1.Sql.Add('SELECT fecha');
Query1.Sql.Add('FROM fichero');
Query1.Sql.Add('WHERE fecha + 365 >= '+ FormatDateTime('mm/dd/yyyy',MiFecha));
Query1.Open;
end;

Un Saludo.

emeritos 12-04-2009 09:51:26

Realmente la sentencia es:
Código Delphi [-]
Query1.Close;
Query1.Sql.Clear;
Query1.Sql.Add('SELECT fecha');
Query1.Sql.Add('FROM fichero');
Query1.Sql.Add('WHERE fecha + 365 >= :afecha);
Query1.Sql.parameters('afecha').AsDate := date();
Query1.Open;
lo que sigue NO funcionando es fecha + 365 que creo que no suma el año.

Gracias.

moz_an 17-04-2009 11:38:32

Buenos dias,
prueba esto:
Código Delphi [-]
Query1.Close;
Query1.Sql.Clear;
Query1.Sql.Add('SELECT fecha');
Query1.Sql.Add('FROM fichero');
Query1.Sql.Add('WHERE fecha>= :afecha);
Query1.Sql.parameters('afecha').AsDate := incyear(date,-1);
Query1.Open;
saludos.


La franja horaria es GMT +2. Ahora son las 23:15:13.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi