Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-02-2005
yhoho yhoho is offline
Miembro
 
Registrado: may 2004
Posts: 58
Poder: 20
yhoho Va por buen camino
Select con fechas

Bueno vamos aya, hago una select con una echa vale,

Select tal from pascual where fecha>12/02/2002;
vale pero en realidad lo que quiero es ponerlo con nu between o algo que funciones similar al bettween es deci acotarlo entre dos fechas, lo he intentado de las siguientes maneras:

select * from tal where fecha>12/02/2002
and fecha>20/02/2002;

pero no funciona alguien m puede aconsejar?? Gracias.
Responder Con Cita
  #2  
Antiguo 28-02-2005
Avatar de Investment
Investment Investment is offline
Miembro
 
Registrado: may 2003
Posts: 378
Poder: 21
Investment Va por buen camino
Código:
select * from TABLA
   
   where (fecha>'12/02/2002'
   
      and fecha<'20/02/2002')
Las dos fechas las tienes con el simbolo de mayor que. Igual es eso lo que te fallaba.
__________________
Saludos,
Peter Investment
Responder Con Cita
  #3  
Antiguo 01-03-2005
yhoho yhoho is offline
Miembro
 
Registrado: may 2004
Posts: 58
Poder: 20
yhoho Va por buen camino
Nada d nada

Lo he probado como dices pero sigue sin aslir nada la solucion en vez de darme las lineas necesarias no m sale nada m sale bacio, con solo la primera comparacion salen cosasa pero poniendo el and no sale nada d nada.
Que hago .
Responder Con Cita
  #4  
Antiguo 01-03-2005
yhoho yhoho is offline
Miembro
 
Registrado: may 2004
Posts: 58
Poder: 20
yhoho Va por buen camino
Mas datos

Ver lo he probado con between fecha and fecha, tampoco m dice nada,
lo he probado con menor que pero no m dice anda es como si el menor no funcionara, pero lo curioso es que cuando pongo el mayor que m salen tanto los mayores como los menores y no se pq puede pasar eso bueno espero q alguien m pueda decir algo pq m tiene en ascuas.

Gracias a qiuen sea.
Responder Con Cita
  #5  
Antiguo 01-03-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Usa siempre FormatDateTime('mm/dd/yyyy',date), probablemente el 20 lo esté tomando como el mes, y por eso no sale nada.

Código SQL [-]
select * from TABLA
   
   where (fecha between '12/02/2002' 
   
      and '20/02/2002')

El formato para between es así, pero repito, pasale las fechas en el formato que espera tu motor de bbdd que normmalmente es mes/dia/año

Saludos
Responder Con Cita
  #6  
Antiguo 01-03-2005
yhoho yhoho is offline
Miembro
 
Registrado: may 2004
Posts: 58
Poder: 20
yhoho Va por buen camino
base de datos

Yo en la base de datos lo tengo como dia mes y año, entonces delphi que unsa mes dia y año??.
si eso asi se entendera el delphi con la base de datos, o tengo que darle algun formato en la select o como lo hago tio gracias siemrep tu jejejeje eres el amo.
Responder Con Cita
  #7  
Antiguo 01-03-2005
yhoho yhoho is offline
Miembro
 
Registrado: may 2004
Posts: 58
Poder: 20
yhoho Va por buen camino
Movidon

Como puede ser ademas que cuando pongo >12/02/2006 m aslen tb los del 2004 y 2005 aaaaaaaaaaaa q movida jejejej ahi hay algo muy aro nen bueno ya vorem como termino esto gracias.
Responder Con Cita
  #8  
Antiguo 01-03-2005
Avatar de argami
argami argami is offline
Miembro
 
Registrado: jun 2003
Ubicación: Barcelona
Posts: 57
Poder: 21
argami Va por buen camino
yo personalmente no me enrroyo con la codificacion horaria. lo que hago es trabajar por parametros en la sql pongo algo como:

Código SQL [-]
   Select * from tabla where fecha between :Fecha1 and :Fecha2

y en el delphi hago lo siguiente

Código Delphi [-]
   Query.Close;
   Query.Params.ParambyName('Fecha1').AsDateTime := Datetimepicker1.DateTime;
   Query.Params.ParambyName('Fecha2').AsDateTime := Datetimepicker2.DateTime;
   Query.Open;

De esta manera el delphi se encarga de modificar la fecha a su gusto.

espero que te sirva

Pd: si tienes algun problema recuerda que tambien hay que modificar el tipo de parametro eso lo haces en el apartado params del query (o TTable)
__________________
Gami

------------------------------------------------------------------
La necesidad no tolera tardanzas pero mas vale tarde que nunca
Responder Con Cita
  #9  
Antiguo 01-03-2005
CHiCoLiTa CHiCoLiTa is offline
Miembro
 
Registrado: may 2003
Posts: 102
Poder: 21
CHiCoLiTa Va por buen camino
En el caso que no puedas pasarlas como parametros como te comenta argami y estas usando SQL Server prueba a ponerlas yyyymmdd y te evitaras problemas de las barras, guiones, primero el mes, primero el año, etc
Responder Con Cita
  #10  
Antiguo 02-03-2005
yhoho yhoho is offline
Miembro
 
Registrado: may 2004
Posts: 58
Poder: 20
yhoho Va por buen camino
Mas lio jejejej sorry

Bein como empezar, en lo que m dijo argami me da error en el AsDateTime y Datetimepicker1 me dice q no esta declarado yo he puesto lo siguiente:

adoquery1.Close;

adoquery1.Parameters.ParamByName('a').AsDateTime:=Datetimepicker1.DateTime;

adoquery1.Parameters.ParamByName('b').AsDateTime:=Datetimepicker1.DateTime;

adoquery1.Open;

Y la select es: Select * from tabla where fecha between :a and :b;

Tb he probado select * from tabla where (fecha>:a and fecha <:b);

Que asi no m da error pero no m sale ninguna fila solo me sale cuando dejo el signo mayor, eso si m sale tanto si es mayor como menor es decir no hace distincion, NO SE QUE HACER JEJEJEJEJEJEJ BUENO VER SI LO SACAMOS GRACIAS GENTE.
Responder Con Cita
  #11  
Antiguo 02-03-2005
Avatar de argami
argami argami is offline
Miembro
 
Registrado: jun 2003
Ubicación: Barcelona
Posts: 57
Poder: 21
argami Va por buen camino
Puedo saber que tipos de campos son que base de datos usas?
__________________
Gami

------------------------------------------------------------------
La necesidad no tolera tardanzas pero mas vale tarde que nunca
Responder Con Cita
  #12  
Antiguo 02-03-2005
yhoho yhoho is offline
Miembro
 
Registrado: may 2004
Posts: 58
Poder: 20
yhoho Va por buen camino
Datos

Los daots son fecha corta es decir 00/00/0000, en acces.
En el query en parametres lo declaro como date y value 00/00/0000.
Responder Con Cita
  #13  
Antiguo 02-03-2005
Avatar de argami
argami argami is offline
Miembro
 
Registrado: jun 2003
Ubicación: Barcelona
Posts: 57
Poder: 21
argami Va por buen camino
por lo que te entiendo lo tienes declarado como Date en una DB de access esto lo verifico por que si lo tienes declarado como timestamp tendras problemas de todas maneras inenta lo sig:

Código Delphi [-]
adoquery1.Close;
adoquery1.Parameters.ParamByName('a').AsDateTime:=Datetimepicker1.DateTime;
adoquery1.Parameters.ParamByName('b').AsDateTime:=Datetimepicker1.DateTime + 1;
adoquery1.Open;
__________________
Gami

------------------------------------------------------------------
La necesidad no tolera tardanzas pero mas vale tarde que nunca
Responder Con Cita
  #14  
Antiguo 02-03-2005
yhoho yhoho is offline
Miembro
 
Registrado: may 2004
Posts: 58
Poder: 20
yhoho Va por buen camino
Datos

Has entendido bien lo de la fecha en la BD vale pero lo que m pasa es que AsDateTime y el datetimepicker me dan error me dicen q no estan declarados tio esto es un lio estoy por cortarme la venas jejejeje es broma jejejeje q lio esto d las busquedas con letras no da tanto problema bueno ver si lo veis donde esta el fallo pq yo ya no se q hacer muxas grcias un dia os invito a comer jejejeje.
Responder Con Cita
  #15  
Antiguo 02-03-2005
yhoho yhoho is offline
Miembro
 
Registrado: may 2004
Posts: 58
Poder: 20
yhoho Va por buen camino
informacio

Bueno ver si consigo aclararlo vale, el AsDateTime y Datetimepicker1 me dice q no estan declarados ee es el error q me da ver q sucede jejejejeje.
Responder Con Cita
  #16  
Antiguo 02-03-2005
Avatar de argami
argami argami is offline
Miembro
 
Registrado: jun 2003
Ubicación: Barcelona
Posts: 57
Poder: 21
argami Va por buen camino
Yo te puse datetimepicker1 por que normalmente estos temas de fechas los cojo de componentes que estan en el formulario de tipo TDateTimePicker probablemente no lo tengas declarado por que no tengas este componente en el formulario, y a lo mejor no te hace falta.

de todas maneras el otro tema es el AsDateTime este no te va porque el AsDateTime no existe para el ado Query existe el value por tanto tendrias que hacer una cosa como la siguiente:

Código Delphi [-]
 adoquery1.Close;
 adoquery1.Parameters.ParamByName('a').Value := Datetimepicker1.DateTime;
 adoquery1.Parameters.ParamByName('b').Value := Datetimepicker2.DateTime
 adoquery1.Open;

Vuelvo ha hacer incapie en el tema de que los datetimepickers son componentes que estan en la paleta Win32 que coloco en el formulario y que logicamente se obtiene el valor de ellos al momento de la ejecucion a travez de la propiedad DateTime o Date (esto depende de si trabajas con un campo con hora o no)

haber si esto te aclara el problema
__________________
Gami

------------------------------------------------------------------
La necesidad no tolera tardanzas pero mas vale tarde que nunca
Responder Con Cita
  #17  
Antiguo 03-03-2005
yhoho yhoho is offline
Miembro
 
Registrado: may 2004
Posts: 58
Poder: 20
yhoho Va por buen camino
Eres el amo tio

on eso me ahs guiado el cmino eres el amo jejeje muxas gracias tio ahora seguire avanznado con esto jejejeje esto del delphi en serio m tiene biciado jejejejeje al final lo controlare jejejej muxas gracias.
Responder Con Cita
  #18  
Antiguo 03-03-2005
CHiCoLiTa CHiCoLiTa is offline
Miembro
 
Registrado: may 2003
Posts: 102
Poder: 21
CHiCoLiTa Va por buen camino
De todos modos si no te rconocia el AsDateTime, mirate los parametros a ver si estan declarados como DateTime o sin embargo estan como unespected
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 03:50:16.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi