Consulta de fecha de cumpleaños en MySQL

Bienvenidos a VerTutoriales, hoy os traigo una consulta bastante sencilla en mysql, para que podáis saber los cumpleaños que son en el mes actual y en el mes que queráis.

El problema me vino con una pequeña función que me pidió un cliente para la aplicación que se le está desarrollando. En su caso es para una ludoteca y me comentó de que manera podía tener controlada la fecha de su cumpleaños para tener esa atención con su cliente (o en su caso, con el tutor de este).

Así que manos a la obra, la consulta actualmente lo que hace es sacar desde el día actual y el siguiente todos los cumpleaños y los ordena por fecha de cercanía.

Por tanto, la consulta quedaría así:

«SELECT id, nombre, nacido FROM alumnos WHERE MONTH(nacido) = MONTH(DATE_ADD(CURDATE(),INTERVAL 1 MONTH)) OR MONTH(nacido) = MONTH(CURDATE()) AND DAY( nacido ) > DAY(CURDATE())»

Como podéis ver, utilizamos la función MONTH que lo que hace es sacar el mes de  una fecha dada, en este caso de «nacido» que guarda la fecha de nacimiento y también de la función CURDATE() que devuelve la fecha actual. También utilizamos la función DAY que al igual que MONTH recibe un parámetro de fecha pero como se podrá intuir, devuelve el día.

También utilizamos la función DATE_ADD, de esta manera podemos añadir a la fecha el intervalo que queramos, nosotros le añadimos un mes, para así saber que es durante el mes que viene, no se podría utilizar MONTH(CURDATE()) + 1 por que si se diera el caso de diciembre, este sería +1 = 13, por lo que eso daría error.

Para termina, simplemente le decimos que sean a partir del día de hoy con el DAY(nacido) > DAY(CURDATE())

Espero que os sea de ayuda para el copy paste!

¿Qué utilidad le vais a dar o cómo lo mejorarías? 🙂

 

Comments (2)

  • Brian 8 enero, 2018

    Muchas gracias amigo me ha servido un monton! 😀 me gustaria q hiciera sun tutorial, sobre como mostrar con notificacion push, el dia q está de cumpleños el usuario

    Reply
    • Carlos Dk 16 enero, 2018

      Bueno… en ese caso, la consulta la lanzaría en el momento en que se autentica el usuario y en ese proceso de carga realizaría la acción que fuera, por ejemplo el envío push que comentas.
      Salud!

      Reply

Leave a comment

Sign in to post your comment or sine up if you dont have any account.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Tu software de gestión


Últimas preguntas:

Logo Dkreativo
Vertutoriales