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

¿Me dan una ayudita para crear un query simple?

Estas en el tema de ¿Me dan una ayudita para crear un query simple? en el foro de Bases de Datos General en Foros del Web. Hola a todos! Ante todo, soy *MUY* nuevo con SQL, empece leer teoria de BD recien hace algunos dias. Estoy intentando hacer un buscador muy ...
  #1 (permalink)  
Antiguo 29/08/2005, 18:27
 
Fecha de Ingreso: diciembre-2004
Mensajes: 721
Antigüedad: 19 años, 4 meses
Puntos: 2
¿Me dan una ayudita para crear un query simple?

Hola a todos!
Ante todo, soy *MUY* nuevo con SQL, empece leer teoria de BD recien hace algunos dias.

Estoy intentando hacer un buscador muy simple de noticias, y la verdad no doy pie con bola con la query.

La idea es que el usuario ingrese: "KEY" / "Fecha_A" / "Fecha_B". (php-form)

Entonces buscaria en la tabla "noticias", todos los registros que contengan la palabra "%key%" en el campo "TITULO", y de todos ellos los encontrados, seleccionar solo aquellos cuyo cuyo campo FECHA este comprendido entre "Fecha_Desde" y "Fecha_Hasta".

La ultima de las querys con las q probe (y fallo como las anteriores muchas) fue:

(Sabiendo que $Key = "%key%" y las fechas son correctas)

"select * from noticias where titulo like = '$key' and fecha between '$Fecha_Desde' and '$Fecha_Hasta'";

Proba hacerlo con Mayor y Menor (><) y tambien con otras comparaciones pero no lo logro. Si funciona si nusar fechas, claro esta.

Busque por google e incluso en el foro, pero solo encuentro cosas mucho mas complejas relacionadas a las fehas, mas bien tirando a calculos de diferencia entre fechas, pero no sobre como obtener todo lo que este entre A y B.

Muchas gracias!!!!
  #2 (permalink)  
Antiguo 29/08/2005, 18:53
 
Fecha de Ingreso: agosto-2005
Mensajes: 6
Antigüedad: 18 años, 8 meses
Puntos: 0
que es lo que no hace bien el scrip, ya probaste practivando la instruccion en el analizador de SQL?

Select * From Tabla Where Campo = '%KEY%' and CampoFecha Between '20050101' and '20050131'

En el caso de que las fechas que busques sean las de enero
  #3 (permalink)  
Antiguo 29/08/2005, 19:33
 
Fecha de Ingreso: diciembre-2004
Mensajes: 721
Antigüedad: 19 años, 4 meses
Puntos: 2
Hmm... ahora que veo lo que vos pones, tiene algo que ver el formato de la fecha verdad? las fechas que deseo comparar estan en formate DATE, es decir "AAAA-MM-DD", ejemplo: 2005-05-01.

Intentare armando una funcion que me quite los "-" y comparo asi..

Gracias
  #4 (permalink)  
Antiguo 30/08/2005, 06:18
 
Fecha de Ingreso: junio-2002
Mensajes: 243
Antigüedad: 21 años, 10 meses
Puntos: 1
Pues yo uso algo parecido a lo q dices y me funciona del modo sigueinte:

Código PHP:
"select * from noticias where titulo like = '$key' and fecha >= '$Fecha_Desde' and fecha <= '$Fecha_Hasta'"
Donde $Fecha_Desde y $Fecha_Hasta tienen el formato 'AAAA-MM-DD'

Por cierto no lo has nombrado pero suponemos q hablas de MySQL no?

Salu2.
  #5 (permalink)  
Antiguo 31/08/2005, 15:37
 
Fecha de Ingreso: diciembre-2004
Mensajes: 721
Antigüedad: 19 años, 4 meses
Puntos: 2
Hola, si hablaba de MySQL.

Ya solucione el problema, al utilizar el formato sin los "-" me funciono perfectamente.

Muchas gracias!
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




La zona horaria es GMT -6. Ahora son las 15:52.