Consulta; Necesito armar una consulta para saber si una fecha ha caido dentro...

Iniciado por astinx, 22 Diciembre 2011, 00:21 AM

0 Miembros y 2 Visitantes están viendo este tema.

astinx

Hola, necesitaba hacer una consulta en SQL, pero mi formación en SQL es un poco básica y casi nunca he usado funciones, que no sean las funciones de agregación estándar.

Necesito armar una consulta para saber si una fecha ha caído dentro de este mes, supongan...

SELECT P.NOMBRE, P.AUTOR FROM PUBLICACION P WHERE (P.FECHA BETWEEN "EL PRIMERO DE ESTE MES" AND "EL ULTIMO DE ESTE MES")

Supongo que en realidad debe haber una función que agilice esta consulta, el problema es que no se cual es, osea la única función que conozco de este tipo es today(), pero yo necesitaría una función que me devuelva solo el mes actual, tomar una fecha, desarmarla, tomar solo el mes y ver si coincide...

Pero ahora que lo pienso también entraría en juego el año XD

Recapitulando entonces, necesito comprobar que una fecha que saco de una consulta cae en el mes de este año. Para que se den una idea, sencillamente estoy manejando una tabla de publicaciones, y tengo que imprimir las publicaciones que se han hecho en este mes.

Desde ya muchas gracias por detenerse a leer.

Saludos!
La programación hoy en día es una carrera entre los ingenieros de software intentando construir mejores y más eficientes programas a prueba de idiotas y el Universo intentando producir mejores y más grandes idiotas. De momento, el Universo está ganando

HdM

Prueba con alguna función de formateo del tipo format(fecha,"mm/yyyy"). Con eso ya podrías hacer la comparación de fechas, directamente por mes y año.

Un saludo.

- Nice to see you again -

Novlucker

Tienes las funciones MONTH y YEAR para obtener mes y año de una fecha dada. Algo así en MSSQL
Código (sql) [Seleccionar]
SELECT P.NOMBRE, P.AUTOR FROM PUBLICACION P WHERE MONTH(P.FECHA)=MONTH(GETDATE()) AND YEAR(P.FECHA)=YEAR(GETDATE())

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

astinx

La programación hoy en día es una carrera entre los ingenieros de software intentando construir mejores y más eficientes programas a prueba de idiotas y el Universo intentando producir mejores y más grandes idiotas. De momento, el Universo está ganando

astinx

La programación hoy en día es una carrera entre los ingenieros de software intentando construir mejores y más eficientes programas a prueba de idiotas y el Universo intentando producir mejores y más grandes idiotas. De momento, el Universo está ganando

Novlucker

Lógico si estabas usando un gestor distinto a MsSQL, pero es que en ningún momento habías dicho para cual era (supongo que MYSQL)

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

astinx

La programación hoy en día es una carrera entre los ingenieros de software intentando construir mejores y más eficientes programas a prueba de idiotas y el Universo intentando producir mejores y más grandes idiotas. De momento, el Universo está ganando