Visual Basic - Cómo escribir querys usando fechas?...

Life is soft - evento anual de software empresarial
 
Vista:

Cómo escribir querys usando fechas?...

Publicado por Rhode (3 intervenciones) el 01/12/2003 22:22:32
Amigos de la Web:
Si alguno me pudiera contestar expresamente ¿Cómo definir la query que presento a continuacion, de manera de obtener el resultado si existe lo que consulto, ya que esta query en sí no da error, pero nunca encuentra registros existiendo estos?...

SQL = \" \"
SQL = SQL + \" select * from mi_tabla \"
SQL = SQL + \" where mi_fecha >= \' \" & CDATE(fecha1) & \" \' \"
SQL = SQL + \" and mi_fecha <= \' \" & CDATE(fecha2) & \" \' \"
com1.CommandText = SQL
Set Tabla1 = com1.Execute

donde fecha1 y fecha2 son de tipo VARIANT?. ¿Cómo debería escribir esta query?.

De antemano muchas gracias.
Rhode.
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:Cómo escribir querys usando fechas?...

Publicado por ricardo (25 intervenciones) el 01/12/2003 23:22:40
Si estas usando sql puede ser asi:
sSql=" SELECT * FROM mi_tabla WHERE CAST(CONVERT(VARCHAR(10),mi_fecha,103) AS DATETIME) BETWEEN ' " &cdate(fecha1) &" ' AND ' " &cdate(fecha2) &" ' "

uso CONVERT porque puede ser que el tipo de dato de mi_fecha sea DATETIME y puede contener horas, minutos y segundos, lo que hace el convert es reducirlo solo a dia, mes y año, luego al CAST vuelve a convertir el resultado en fecha para que concuerde con los argumentos del BETWEEN (fecha1 y fecha2)

Si usas Access puede ser asi:
sSql=" SELECT * FROM mi_tabla WHERE mi_fecha>=# " &format(fecha1,"mm/dd/yyyy") &"# AND mi_fecha<=# " &format(fecha2,"mm/dd/yyyy") &"#"

espero te sirva....Ricardo
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