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

[SOLUCIONADO] extraer primeros 5 días de cada mes

Estas en el tema de extraer primeros 5 días de cada mes en el foro de Mysql en Foros del Web. Hola a todos , tengo una tabla de la que quiero extraer el número de servicios que se han hecho los primeros 5 días de ...
  #1 (permalink)  
Antiguo 26/03/2013, 12:58
Avatar de Pike  
Fecha de Ingreso: agosto-2008
Ubicación: Por ahí
Mensajes: 251
Antigüedad: 15 años, 8 meses
Puntos: 1
extraer primeros 5 días de cada mes

Hola a todos , tengo una tabla de la que quiero extraer el número de servicios que se han hecho los primeros 5 días de cada mes , el script que adjunto selecciona los servicios anteriores a la fecha 2013-03-05, ¿ cómo podía extraer los servicios realizados los primeros 5 días de cada mes de todos los años que están dentro de la tabla?

select count(*) as "servicios" from rep where CodiParc = 20 and Dia <='2013-03-05';

Un saludo
  #2 (permalink)  
Antiguo 26/03/2013, 13:28
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: extraer primeros 5 días de cada mes

Hola Pike:

No estoy seguro de haber entendido correctamente lo que quieres, pero si entendí bien esto es más o menos lo que necesitas:

Código MySQL:
Ver original
  1. mysql> SELECT * FROM fechas;
  2. +------+------------+
  3. | id   | fecha      |
  4. +------+------------+
  5. |    1 | 2013-03-01 |
  6. |    2 | 2013-03-02 |
  7. |    3 | 2013-03-03 |
  8. |    4 | 2013-03-04 |
  9. |    5 | 2013-03-05 |
  10. |    6 | 2013-03-06 |
  11. |    7 | 2013-03-06 |
  12. |    8 | 2012-02-01 |
  13. |    9 | 2012-02-02 |
  14. |   10 | 2012-02-03 |
  15. |   11 | 2012-02-04 |
  16. |   12 | 2011-02-10 |
  17. |   13 | 2011-02-06 |
  18. +------+------------+
  19. 13 rows in set (0.03 sec)
  20.  
  21. mysql> SELECT * FROM fechas WHERE DAY(fecha) <= 5;
  22. +------+------------+
  23. | id   | fecha      |
  24. +------+------------+
  25. |    1 | 2013-03-01 |
  26. |    2 | 2013-03-02 |
  27. |    3 | 2013-03-03 |
  28. |    4 | 2013-03-04 |
  29. |    5 | 2013-03-05 |
  30. |    8 | 2012-02-01 |
  31. |    9 | 2012-02-02 |
  32. |   10 | 2012-02-03 |
  33. |   11 | 2012-02-04 |
  34. +------+------------+
  35. 9 rows in set (0.00 sec)

Observa que todas las fechas son corresponden a los primeros 5 días del mes, independientemente del mes y el año que se trate. Dale un vistazo para ver si te sirve.

Saludos
Leo.
  #3 (permalink)  
Antiguo 26/03/2013, 13:37
Avatar de Pike  
Fecha de Ingreso: agosto-2008
Ubicación: Por ahí
Mensajes: 251
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: extraer primeros 5 días de cada mes

Exactamente eso es lo que necesito ¡¡¡ mil gracias !!! desconocía que al atributo se le podía pasar day, me imagino que también funcionara con month o year.

Un saludo
  #4 (permalink)  
Antiguo 26/03/2013, 13:54
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: extraer primeros 5 días de cada mes

Hola Pike:

Creo que es conveniente que revises todas las funciones que posee MySQL para el manejo de Fechas:

http://dev.mysql.com/doc/refman/5.0/...functions.html

Estoy segura que algunas de ellas te podrán servir en un futuro.

Saludos
Leo.

Etiquetas: cada, primeros, select, 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:07.