Foros Club Delphi

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

yhoho 04-10-2004 18:23:00

date
 
tengo un campo fecha y quiero compararlo en un select:
(select * from tabla where fecha = .......)
quisiera saber como comparar esa fecha si seria entre comillas y como tendria q ser esa fecha.

marcoszorrilla 04-10-2004 18:30:07

Código SQL [-]
  (select * from tabla where fecha = '01/23/2004')

Un Saludo.

yhoho 08-10-2004 12:58:26

mas
 
M permace el error con la select * from tabla wuere fecha = '12/02/2002';
asi m da error tambien m da erro con fecha = cast('12/02/2002' on date) o algo asi era, y con los formatos de las almoadillas, no se como hacer q la fecha m funcione en la busqueda, esta hecho con acces y delphi pero es q esto d la fecha m da mazo errores porfavovr alguien q m lo solucione.

marcoszorrilla 08-10-2004 15:04:22

Di con que con qué tipo de tablas estás trabajando y te daremos la solución en este mismo hilo.

Un Saludo.

geovany 08-10-2004 20:48:02

a ver
 
las fechas no llevan comillas solo la fecha en si

select * from dates where fecha > 10/10/2004

marcoszorrilla 09-10-2004 13:27:28

Las fechas deben ir entre comillas y además si estás utilizando Access encerradas entre almohadillas.

Un Saludo.

yhoho 13-10-2004 11:37:11

ver si lo conseguimos
 
Bueno el tipo de tablas es con acces.

rafita 13-10-2004 13:20:35

Buenas.

La solución te la ha dado Marcoszorrilla:
* la fecha en formato Mes, Día y Año
* y entre almohadillas.

Ej:
Código:

Fecha1:=FormatDateTime('mm/dd/yyyy',FDesde.Date);
Fecha2:=FormatDateTime('mm/dd/yyyy',FHasta.Date);
SqlText:='Select Fecha, Maquina, Conductor, Lugar, Trabajo, Tiempo, TiempoLiteral, Incidencias, Id'
  +' from Trabajos'
  +' where Fecha>=#'+Fecha1+'# and Fecha<=#'+Fecha2+'# order by ';

Saludos

yhoho 20-10-2004 10:49:29

asi no es?
 
Yo lo hago con un adoquery y comparo una fecha escrita por mi es decir
select * from tabla where fecha = '12/02/2002'
no quiero hacerlo con bariables y no se como se ahce pq ya he probado todo
muxas gracias por todo.

Ignacio 25-10-2004 03:00:25

Perdon si es tarde para la ayuda. Es que recien hoy vi tu hilo.

Partiendo de que fecha es el nombre de tu campo tipo date, podes compararlo con una una fecja escrita por vos y que tenga el siguiente formato: 'dd.mm.aaaa' es decir que hoy seria '24.10.2004' entonses la sintaxis sería: Select * from TuTabla where fecha = '24.10.2004'
Usar el punto como separador entre dia, mes y año es para el formato de fecha Frances, o sea el que usamos a diario.

Ahora si usaramos parámetros, no deberás preocuparte por el formato. La sintaxis sería Select * From TuTabla Where fecha = :FechaParametro
Luego de haber escrito esto dentro del Query deberás entrar a la propiedad Parametrs de dicho Query donde encontrarás FechaParametro y le espesificarás el tipo Date.
Para darle valor al parámetro en cuestion deberás escribir en el código Delphi lo siguiente:
QryTuTabla.ParamByName('FechaParametro').AsDate:=ControlDeFecha.Date;
Esto está compuesto de QryTuTabla (sería el nombre que le diste al Query en cuestión), FechaParametro (es el parámetro que usamos dentro del Query), ControlDeFecha.Date (es el control del cual te valiste para que el operador de tu programa elija una fecha como por ej DateTimePicker de los controles Win32. y date es la propiedad de estos controles que contendrá la fecha especificada por el operador).
Luego de todo esto activas tu Query con la siguiente sintaxis: QryTuTabla.Active:=True;

Bueno. Espero que te sirva.
Chau

RONPABLO 26-10-2004 23:48:44

Otra forma podria ser.
 
Hola.. con respecto al formato de fecha en ocaciones es afectado por el orden, pj en Firebird yo tengo que dar el año primero, luego el mes y por ultimo el dia, ademas para estar 100% seguro lo complemento con un cast. algo asi:

select * from tabla where fecha = cast('2004-10-24' as date) y con eso tengo para solucionar problemas con fechas


La franja horaria es GMT +2. Ahora son las 11:40:47.

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