2012-02-23 32 views
5

Soy nuevo en sql y programación así que por favor tengan paciencia conmigo. ¿Hay una función en mysql que obtiene la cantidad de días en un mes? Ejemplo si el mes es febrero y el año 2012 debería regresar 29. Gracias de antemano.¿Cómo obtener el número de días de un mes dado el mes y año en particular?

+0

duplicado posible de [cómo averiguar el número de días del mes en MySQL] (http://stackoverflow.com/questions/10736989/how-to- find-out-number-of-days-in-month-in-mysql) – Kromster

Respuesta

12

No hay directa "último día del mes", pero que se puede fingir haciendo un día (last_day())

mysql> select last_day('2012-02-22'), day(last_day('2012-02-22')); 
+------------------------+-----------------------------+ 
| last_day('2012-02-22') | day(last_day('2012-02-22')) | 
+------------------------+-----------------------------+ 
| 2012-02-29    |       29 | 
+------------------------+-----------------------------+ 
1 row in set (0.00 sec) 

last_day() devuelve la fecha completa del último día en el año/mes de una fecha especificada, por lo que simplemente debe usar day() para extraer el día de ese último día.

fecha/hora documentación funciones de MySQL está aquí: http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

+0

¿Qué le parece obtener todos los días previos? Si se entrega la producción 2012-02-22, debe ser enero-2012 31 y febrero-2012 29 – DeskToDevelop

Cuestiones relacionadas