SQL - Fecha Hora

 
Vista:

Fecha Hora

Publicado por wuil (3 intervenciones) el 05/12/2003 02:23:42
Hola Muchachos!!!
Tengo una tabla en un server SQL 7.0 con los campos Fecha, hora, Descripcion....En access realizo la consulta y colocando como parametros y criterios fecha y hora funciona ok me devuelve lo solicitado. El problema se presenta en formularios, tengo dos cuadro de textos, fecha y hora y un boton para abrir un formulario que me muestre la info de esa fecha y hora pero no devuelve nada, utilizando solo la fecha como filtro me funciona ok. lo que pasa es que en un dia pueden existir varias fecha diferentes, lo que he investigado es que aparentemente la hora en sql es una parte fecha y la otra la hora misma, alguien que me ayude por favor. Ojo la tabla colocada en access me funcionan bien el problema es en SQL 7.0 Espero haberme explicado.
Para explicarme mejor vean lo siguiente:
Fecha Hora Descricion
02/12/2003 14:04 jjjjjj
02/12/2003 14:08 xxxxx
02/12/2003 14:45 ñññññ

Ej: Al solicitar Fecha 02/12/2003 , Hora 14:08, que me devuela el registro
02/12/2003 14:08 xxxxx

Isaias me respondiste mas abajo creo que esa respuesta no era sobre mi Pregunta, Gracias
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:Fecha Hora

Publicado por Isaías Islas (5072 intervenciones) el 05/12/2003 17:43:17
Sin leer mi respuesta (que usted comenta le di), solo recuerdo haber aclarado que en SQL70 la columas de tipo FECHA, guarda la fecha y la hora en la misma columna.

Si usted desea "manejar" las fechas, le recomiendo que sean siempre en este formato:

YYYY-MM-DD HH:MM:SS:NNNN

Ahora bien, existen varias funciones del sistema para el menejo de columnas tipo fecha.

GETDATE()
DATEPART()
DATEADD()
DATEDIFF()
DAY()
YEAR()
MONTH()
Incluso el mismo CONVERT, nos permite manejar fechas, vea estos ejemplos

SELECT CONVERT(CHAR(8), GETDATE(), 112)
SELECT CONVERT(CHAR(5), GETDATE(), 108)

En las comparaciones entre fechas, le sugiero utilizar <> y el siguiente formato:

SELECT * FROM MYTABLA WHERE MyColFecha > '2003-12-01 13:00:00' OR MyColFecha < '2003-12-05 23:00:00'

Para obtener los datos de UN DIA en especial

SELECT * FROM MYTABLA WHERE CONVERT(CHAR(8),MyColFecha,112) = '20031201'

Consulte sus BOL, para mayor referencia.

Saludos.
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