Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Buscar entre fechas en un campo char

Estas en el tema de Buscar entre fechas en un campo char en el foro de SQL Server en Foros del Web. Hola a todos, resulta que un campo char guardo la fecha de una cotizacion (now()), ahora estoy haciendo un form para que me muestre las ...
  #1 (permalink)  
Antiguo 18/06/2008, 08:41
 
Fecha de Ingreso: enero-2002
Mensajes: 57
Antigüedad: 22 años, 3 meses
Puntos: 0
Buscar entre fechas en un campo char

Hola a todos, resulta que un campo char guardo la fecha de una cotizacion (now()), ahora estoy haciendo un form para que me muestre las cotizaciones entre tal y tal fecha, el problema es que al hacer el select no me resulta, no pude cambiar el campo a datetime por que tiene solo 8 caracteres y el now me da la fecha y la hora, ayuda porfa, de antemano muchas gracias, saludos

Quique
__________________
Quique
  #2 (permalink)  
Antiguo 18/06/2008, 13:51
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 10 meses
Puntos: 180
Respuesta: Buscar entre fechas en un campo char

¿Que motor de base de datos estas ocupando?
  #3 (permalink)  
Antiguo 18/06/2008, 14:10
 
Fecha de Ingreso: enero-2002
Mensajes: 57
Antigüedad: 22 años, 3 meses
Puntos: 0
De acuerdo Respuesta: Buscar entre fechas en un campo char

en sql, al final cambie el campo a datetime, y no me corto la fecha, el problema lo tengo ahora al tratar de pasar la fecha desde un xpcalendar, por que lo toma como 00/00/0000 y supestamente el sql lee 00-00-0000, he tratado de configurar el xpcalendar pero no hay caso, la otra opcion que se me ocurre seria de reemplazar los / por - pero no se como hacerlo, si alguien me puede ayudar porfa, gracias de antemano, saludos


quique
__________________
Quique
  #4 (permalink)  
Antiguo 18/06/2008, 14:50
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 10 meses
Puntos: 180
Respuesta: Buscar entre fechas en un campo char

Quinque

SQL es una respuesta muy extensa, podria ser cualquiera como: ACCESS, SYBASE, ORACLE, SQL SERVER, INFORMIX, DB/2, DB/IV.

¿Cual? y que version
  #5 (permalink)  
Antiguo 18/06/2008, 15:31
 
Fecha de Ingreso: enero-2002
Mensajes: 57
Antigüedad: 22 años, 3 meses
Puntos: 0
Respuesta: Buscar entre fechas en un campo char

perdon, sql server, no me di cuenta, sorry, al final parece si lo reconoce, pero lo raro( seguramente tengo que haber escrito mal la sentencia) es por ej le paso el sigte select: select * from cotizacion where fecha_coti >= 'fecha_ini' and fecha_coti <= 'fecha_ter' y no me incluye la fecha del final o sea si pongo fecha_ini 06-06-08 y fecha_ter 16-06-08 la ultima fecha no la incluye, no se si me explico, saludos
__________________
Quique
  #6 (permalink)  
Antiguo 18/06/2008, 23:43
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Buscar entre fechas en un campo char

¿No usáis BETWEEN... AND con valores de fecha en SQL server 5?

El problema es que tu campo, según dices es datetime, y recoge las fechas y las horas y segundos y 2008-02-01 siempre es menor que 2008-02 01 00:00:01 y siguientes, según creo. Tendrías que comparar con esa fecha sin usar las horas, minutos y segundos. A ver si es eso.
  #7 (permalink)  
Antiguo 19/06/2008, 15:56
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 10 meses
Puntos: 180
Respuesta: Buscar entre fechas en un campo char

No, el problema, creo yo, es el formato de fechas que estas utilizando, debe ser ANSI (yyyymmdd)
  #8 (permalink)  
Antiguo 20/06/2008, 13:38
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 9 meses
Puntos: 39
Respuesta: Buscar entre fechas en un campo char

Y yo creo que el problema se resuelve usando la siguiente linea:
SET DATEFORMAT DMY
En todo caso puedes probar con la funcion CONVERT().
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #9 (permalink)  
Antiguo 02/07/2008, 16:00
 
Fecha de Ingreso: septiembre-2007
Mensajes: 54
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Buscar entre fechas en un campo char

tengo el mismo problema con la diferencia yo uso el between sin embargo no toma los totales de los campos si lo busco de la diferente forma me explico

'------------------------------------------------------
Fechas.Open "Select * From TB_Maestro where emision between '" & z_fechadesde & "' and '" & z_fechahasta & "' order by guiadesp ", AccessConexion, adOpenKeyset, adLockOptimistic

eso me trae = 623 registros

'-----------------------------------------------------
Fechas.Open "Select * From TB_Maestro where emision between #02-jun-2008# and #06-jun-2008# order by guiadesp ", AccessConexion, adOpenKeyset, adLockOptimistic

eso me trae = 735 registros

donde esta el error mmmm ... aun estoy buscando el problema es como usar ## en un string si no no lo busca ,,

saludos
  #10 (permalink)  
Antiguo 02/07/2008, 16:16
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 10 meses
Puntos: 180
Respuesta: Buscar entre fechas en un campo char

BETWEEN, ya lo hemos dicho por aca, no es para FECHAS, debes usar formato ANSI y >= <=

WHERE emision >= '20080101' AND emision <= '20080118'

La instruccion SET DATEFORMAT DMY, solo aplica para el query actual.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 06:14.