PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 2024 → Como extraer la fecha de un campo DateTime
Como extraer la fecha de un campo DateTime
Started by Gus, Jan., 27 2009 8:39 AM - 3 replies
Posted on January, 27 2009 - 8:39 AM
Hola:
Tengo en SQL Server una tabla con un campo DateTime. Cuando quiero filtrar los registros por un rango de fechas, se complica porque el campo tiene fecha y hora, mientras que el filtro solo tiene fecha (hora en 00:00), por lo que no coinciden y no son seleccionados. Que funcion puedo utilizar para que extraiga del campo Date Time solo la parte de la fecha y asi comparar con el filtro adecuadamente?

Gracias

Gus
Posted on January, 30 2009 - 10:10 AM
Prueba a utilizar algo parecido a:
Valores.fecha BETWEEN '" + EDT_fechaInicial+EDT_HoraInicio+"00' AND '"+ EDT_fechaFinal+EDT_HoraFinal+"00' AND "+ ...

Aqui estoy añadiendo manualmente a un campo que solo tiene la fecha un campo que tiene la hora y los minutos y luego le añado "00" los segundos.
A mi me funciona perfectamente.

Saludos
Posted on January, 30 2009 - 6:49 PM
En SQL Server existe la funcion Convert el cual te puede servir para lo que quieres hacer, por ejemplo: Select * from tableName where convert(char(10),xFecha,101) = '1/30/2009'
Posted on February, 28 2009 - 3:33 AM
Otra alternativa que puedes utilizar para filtrar las fecha de tu tabla en un rango determinado es la siguiente:

Select Fecha From Tabla
Where DateDiff(day, @FechaInicial, Fecha) >= 0
And Datediff(day, @FechaFinal, Fecha) < 0

La funcion datediff te devuelve la difrenecia de dias (tu especificas el lapso de tiempo en el primer parametro) de dos variables de tipo fecha, todas las fechas que al restarse de tu fecha incial den positivo, y al restarse de tu fecha final den negativo, estan dentro del rango.