consulta con LIKE de SQL

04/03/2005 - 20:39 por Manuel Aguilera | Informe spam
Hola comunidad, necesito realizar la siguiente tarea:
necesito obtener todos los registros tal que el mes y el
año sean los que enviare por parametro. Por ejemplo si
sabemos que el mes y año actual son:

month = Now.Month
year = Now.Year

entonces deseo obtener todos los registros donde el campo
fecha se encuentre en el mes month y el año year. Pense en
utilizar el operador LIKE de SQL pero no me resulta.

No puedo usar un BETWEEN entre fechas ya que como
desconozco los numeros de los dias se produce un error.
Esto sucede si, por ejemplo, hago esto:

BETWEEN '1-month-year' AND '31-month-year'

En meses que no tienen 31 dias (como febrero) se produce un
error de DATETIME fuera de intervalo.

Si alguien sabe como usar el operador LIKE u otra manera de
solucionar este problema le agradeceria de por vida. Gracias.

Preguntas similare

Leer las respuestas

#1 Anonimo
04/03/2005 - 21:00 | Informe spam
Que tal si usas
Fecha >= '1-month-year' and Fecha < '1-month+1-year'

Mostrar la cita
en
Mostrar la cita
un
Mostrar la cita
de
Mostrar la cita
Gracias.
Mostrar la cita
#2 Manuel Aguilera
04/03/2005 - 21:28 | Informe spam
Gracias maestro, no se me habia ocurrido, pero que va a
pasar cuando sea el mes 12 (diciembre), ya que no existe el
mes 1 - 13 - year no podria preguntar por que la fecha sea
menor que el 1 - 13 - year.

Gracias nuevamente


Mostrar la cita
#3 Paulo Conde
05/03/2005 - 01:34 | Informe spam
En caso de que mes sea doce habria que ponerlo a uno, es facil usando el
modulo. Pero si se pone a uno hay que incrementar el año en una unidad,
entonces se complica. Lo ideal es sumar un mes usando Dateadd (esto
automaticamente incrementa el año si es necesario), algo asi:

Fecha >= '1-month-year' and Fecha < DATEADD('mm',1,'1-month-year' )
#4 David Sans
07/03/2005 - 09:48 | Informe spam
Hola Manuel y grupo,

Mírate esta función :

Now.DaysInMonth(Now.Year, Now.Month)

Te da los días que tiene el mes y año que le pasas.
Creo que te puede valer para saber los días que tiene un mes en concreto.

Un saludo.
David


"Manuel Aguilera" escribió en el mensaje news:303401c520f1$d1f61620$

Hola comunidad, necesito realizar la siguiente tarea:
necesito obtener todos los registros tal que el mes y el
año sean los que enviare por parametro. Por ejemplo si
sabemos que el mes y año actual son:

month = Now.Month
year = Now.Year

entonces deseo obtener todos los registros donde el campo
fecha se encuentre en el mes month y el año year. Pense en
utilizar el operador LIKE de SQL pero no me resulta.

No puedo usar un BETWEEN entre fechas ya que como
desconozco los numeros de los dias se produce un error.
Esto sucede si, por ejemplo, hago esto:

BETWEEN '1-month-year' AND '31-month-year'

En meses que no tienen 31 dias (como febrero) se produce un
error de DATETIME fuera de intervalo.

Si alguien sabe como usar el operador LIKE u otra manera de
solucionar este problema le agradeceria de por vida. Gracias.
Ads by Google
Search Busqueda sugerida