Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   problemas con fecha en sql (https://www.clubdelphi.com/foros/showthread.php?t=82698)

jupehe 04-04-2013 04:13:30

problemas con fecha en sql
 
Os comento, estoy haciendo una consukta
Código Delphi [-]
datos.Query1.SQL.Text:='SELECT sum(precio) as total FROM abonos WHERE fecha>'+#39+'01/04/2013'+#39+' and fecha<'+#39+'01/10/2013'+#39;
y me tira el error invalid variant type conversion. el error lo provoca la fecha < que, tambien he probado con los parametros, con Between y me da el mismo error, si pongo
Código Delphi [-]
datos.Query1.SQL.Text:='SELECT sum(precio) as total FROM abonos WHERE  fecha>'+#39+'01/04/2013'+#39+' and fecha>'+#39+'01/10/2013'+#39;
no lo da. Estoy bloqueado, haber si alguien me puede ayudar.
uso el delphi 6, tabla paradox

olbeup 04-04-2013 09:14:53

Hola jupehe

No encuentro ningún error en la SQL, has probado hacerlo directamente en el BDE (Database Desktop) de paradox, quitale el WHERE haber si el problema esta en el campo PRECIO por algún dato erroneo que pudiera tener.

Código SQL [-]
with datos.Query1 do
begin
  SQL.Add('SELECT');
  SQL.Add('    SUM(PRECIO) AS TOTAL');
  SQL.Add('  FROM Abonos');
  SQL.Add('  WHERE FECHA BETWEEN ' + QuotedStr('01/04/2013') + ' AND ' + QuotedStr('01/10/2013'));

  Open;
end;

Un saludo

jupehe 04-04-2013 11:48:24

Gracias por responder olbeup, he echo lo que me dices y me da ningun resultado. te comento:
directamente en la BDE
Código Delphi [-]
SELECT SUM(PRECIO) AS TOTAL FROM Abonos WHERE FECHA>'01/01/2013'

resultado correcto

Código Delphi [-]
SELECT SUM(PRECIO) AS TOTAL FROM Abonos WHERE FECHA>'01/01/2013' and FECHA<'01/09/2013'

no me da nongun resultado,

Código Delphi [-]
SELECT SUM(PRECIO) AS TOTAL FROM Abonos WHERE FECHA<'01/09/2013'

no me da ningun resultado y hay datos, he probado con BETWEEN y tampoco, esto no me habia pasado antes, quizas sea un problema de la tabla.

olbeup 05-04-2013 11:47:04

Hola Jupehe,

Prueba a quitarle sel SUM(PRECIO) y pon un asterisco ( * ) para que te muestre todos los registros según fecha, de esta marera sabrás si hay registros que sumar.

Un saludo.

jupehe 05-04-2013 18:45:11

Hola, me hace la consulta, pero no me controla las fecha, sale todo igual.

Ya he echo lo que quiero sin sql, cuando tenga mas tiempo cambiare la tabla, y lo probare, tenia que sacar los datos por trimestre, y ya lo he echo, manualmente.

Gracias por tu ayuda. y un saludo

jpgonzalez 19-04-2013 01:19:21

Prueba poniendo la fecha como 'aaaa-mm-dd' y fijate si asi funciona.


La franja horaria es GMT +2. Ahora son las 11:14:30.

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