FoxPro/Visual FoxPro - consulta para rango de fecha

 
Vista:

consulta para rango de fecha

Publicado por tibet (43 intervenciones) el 20/07/2005 17:06:51
hola necesito hacer una consulta para tomar un rango de datos pero no se como hacerla, e intentado de esta forma pero me marca error.
SELECT * FROM aux;
WHERE SUBSTR(auxrec.date,1,12)="200507180755" to SUBSTR(auxrec.date,1,12)="200507190755";
ORDER BY date
gracias por su valiosa ayuda
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:consulta para rango de fecha

Publicado por Alberto Sanchez Sarabia (45 intervenciones) el 20/07/2005 18:29:15
Mi estimado Tibet:

Primero, ¿ el campo en donde esta la cadena '200507180755' es de tipo Cadena (Text) ? -- Ok, si es asi, no extraigas las cadenas con SUBSTR(), te sugiero que manejes una cadena validada con la funcion AT(cQueBusco,cDondeBusco) o en su defecto puedes usar un objecto Text y pedirle a tu usuario que te indique la cadena que debes buscar y validar a traves de el comando SQL los registros que cumplan con esa peticion, el comando SQL quedaria asi:

a) Suponiendo que te indica tu usuario la cadena: "00507180755" tal como lo dice tu ejemplo, escribirias el siguiente comando:

cFecha = Alltrim(ThisForm.Text.Value)
cSQL = 'Select * From Mitabla Where "%' + cFecha +;
'%" Into Cursor misDatos Order By Fecha'

&cSQL

*/ Este comando te genera un SQLCursor de nombre "MiTabla' que contendra todos los registros con la cadena de fecha indicada.

Por otro lado, te sugiero que no nombres tu campo como 'Date' nombralo como Fecha o ValFecha o cualquier otro nombre que no haga conflicto con las palabras reservadas de Visual Foxpro.

Ademas, si quieres manejar fechas mejor investiga el uso de las funciones de FECHA (Date(), DateTime(), TTOD(), etc) y tus campos que van a manejar fechas, si tu diseño lo permite, definelos como tipo DATE, es mas facil de controlar y programar haciendolo asi.

Ojala estos comentarios te sean de utilidad y quedamos en contacto para cualquier nota o comentario al respecto,

Saludos

Alberto Sanchez Sarabia
Consultor de Sistemas
Mexico, D.F.










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

RE:consulta para rango de fecha

Publicado por Saul (362 intervenciones) el 20/07/2005 19:19:49
yo todo lo que es fecha lo trabajo asi
no se porque lo combiertes a caracter..

ThisForm.txtFechaIni.value && "TuFecha Inicial"
ThisForm.txtFechaFin.value &&"TuFecha Final"

SELECT * FROM aux;
WHERE BETWEEN (auxrec.date,ThisForm.txtFechaIni.value,ThisForm.txtFechaFin.value);
ORDER BY date
INTO CURSOR temp_aux

suerte..

bye
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