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

Duda con Consulta de Fechas

Estas en el tema de Duda con Consulta de Fechas en el foro de Mysql en Foros del Web. Cordial saludo para todos... En una de las tablas de mi desarrollo incluyo ID del Cliente, nombre del Cliente y Fecha de Cumpleaños... Por favor ...
  #1 (permalink)  
Antiguo 11/11/2011, 08:39
Avatar de rogoelpra  
Fecha de Ingreso: abril-2007
Ubicación: Bucaramanga
Mensajes: 246
Antigüedad: 17 años
Puntos: 2
Pregunta Duda con Consulta de Fechas

Cordial saludo para todos...

En una de las tablas de mi desarrollo incluyo ID del Cliente, nombre del Cliente y Fecha de Cumpleaños... Por favor necesito una Consulta que me traiga a aquelos clientes que le falten 5 dias para cumplir años... Como deberia ser la sentencia.

De antemano gracias por la ayuda.
  #2 (permalink)  
Antiguo 11/11/2011, 09:21
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Duda con Consulta de Fechas

¿Escribiste algo ya de esa sentencia?
¿Te fijaste en las funciones de fecha y hora?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 11/11/2011, 09:35
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 4 meses
Puntos: 447
Respuesta: Duda con Consulta de Fechas

Hola rogoelpra:

¿Qué guardas en tu tabla, la fecha de nacimiento con año, mes y día? ¿de qué tipo de dato es tu campo? ¿Qué has intentado hacer?. El problema creo yo que es sencillo y en realidad hay muchas formas de llegar al resultado. Tienes muchas funciones de Fecha que te proporciona MySQL para este tipo de cuestiones, me pregunto si ya leíste algo en la documentación.

Uno de los procedimientos (que no el único y posiblemente tampoco el mejor) sería calcular el día en que una persona cumple años ESTE AÑO, es decir, si nací un 21 de Diciembre de 1980 eso quiere decir mi fecha de cumpleaños sería el 21 de Diciembre de 2011 (mismo día y mes, con el año actual). A partir de esta fecha sólo faltaría calcular la diferencia en días con respecto a la fecha actual para saber cuantos días faltan para mi cumpleaños (DATEDIFF()), o también podrías restarle 5 días y preguntar si es igual a la fecha actual (DATE_SUB() o SUBDATE()), o también a la fecha actual sumarle 5 años para ver si corresponde a la fecha (DATE_ADD() o ADDDATE()) y un muchas más formas...

checa este script:


Código MySQL:
Ver original
  1. mysql> CREATE TABLE TuTabla (nombre VARCHAR(10), fecha_nacimiento date);
  2. Query OK, 0 rows affected (0.14 sec)
  3.  
  4. mysql> INSERT INTO TuTabla VALUES ('uno', '1980-11-15'), ('dos', '1977-11-16'),
  5.     -> ('tres', '2000-11-17'), ('cuatro', '2010-11-16');
  6. Query OK, 4 rows affected (0.08 sec)
  7. Records: 4  Duplicates: 0  Warnings: 0
  8.  
  9. mysql> SELECT * FROM TuTabla;
  10. +--------+------------------+
  11. | nombre | fecha_nacimiento |
  12. +--------+------------------+
  13. | uno    | 1980-11-15       |
  14. | dos    | 1977-11-16       |
  15. | tres   | 2000-11-17       |
  16. | cuatro | 2010-11-16       |
  17. +--------+------------------+
  18. 4 rows in set (0.03 sec)
  19.  
  20. mysql> SELECT nombre, fecha_nacimiento,
  21.     -> DATE_ADD(fecha_nacimiento,
  22.     -> INTERVAL YEAR(CURDATE())-YEAR(fecha_nacimiento) YEAR) fecha_comple
  23.     -> FROM TuTabla;
  24. +--------+------------------+--------------+
  25. | nombre | fecha_nacimiento | fecha_comple |
  26. +--------+------------------+--------------+
  27. | uno    | 1980-11-15       | 2011-11-15   |
  28. | dos    | 1977-11-16       | 2011-11-16   |
  29. | tres   | 2000-11-17       | 2011-11-17   |
  30. | cuatro | 2010-11-16       | 2011-11-16   |
  31. +--------+------------------+--------------+
  32. 4 rows in set (0.00 sec)

Como verás, a partir de la fecha de nacimiento obtengo la fecha en que cumplen años ESTE AÑO, el resto lo dejo para que intentes hacerlo por tu cuenta, pero si continuas con problemas, pon la consulta que has intentado hacer y te ayudamos a afinarla.

Saludos
Leo.
  #4 (permalink)  
Antiguo 13/11/2011, 15:34
 
Fecha de Ingreso: junio-2011
Mensajes: 1
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Duda con Consulta de Fechas

necesito hacer una apertura de caja para registrar las compras y las ventas de una zapateria pero no se como programar la fecha dateTimePicker1 por q el alta lo estoy hacieno con tablas se poco de delpy ...espero respusta plizz
  #5 (permalink)  
Antiguo 13/11/2011, 15:55
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Duda con Consulta de Fechas

Cita:
Iniciado por loree_2005 Ver Mensaje
necesito hacer una apertura de caja para registrar las compras y las ventas de una zapateria pero no se como programar la fecha dateTimePicker1 por q el alta lo estoy hacieno con tablas se poco de delpy ...espero respusta plizz
Es tema de programción, no de base de datos.
MySQL no maneja nada de los formularios.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: tabla
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 00:24.