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

Mostrar agrupaciones varias en consulta

Estas en el tema de Mostrar agrupaciones varias en consulta en el foro de Mysql en Foros del Web. Hola a todos!! Tengo una base de datos llamada imágenes, en donde tengo los campos (id, nombre_imagen, fecha) Quiero sacar un listado del numero de ...
  #1 (permalink)  
Antiguo 02/10/2014, 11:39
Avatar de nolose  
Fecha de Ingreso: diciembre-2007
Ubicación: España
Mensajes: 165
Antigüedad: 16 años, 10 meses
Puntos: 2
Mostrar agrupaciones varias en consulta

Hola a todos!!

Tengo una base de datos llamada imágenes, en donde tengo los campos (id, nombre_imagen, fecha)

Quiero sacar un listado del numero de imágenes que se suben a la base de datos por día y para ello utilizo esta consulta que funciona perfectamente:

Código MySQL:
Ver original
  1. select fecha, count(id)
  2. from imagenes
  3. where fecha between '2014-04-01' and '2014-06-01'
  4. group by fecha
  5.  
  6.  
  7. Resultado:
  8. fecha, count(id)
  9. 2014-04-14, 7
  10. 2014-04-15, 2
  11. 2014-05-03, 32
  12. 2014-05-09, 81
  13. 2014-05-27, 13
  14. 2014-05-28, 37
  15. 2014-05-29, 55
[/PHP]


El problema es el siguiente: Necesito que los días que no se haya subido ninguna foto (es decir, que no haya ningún registro en la base de datos) me muestre un 0.

¿Sabéis como podría hacerlo????

¡¡Gracias!!

Última edición por gnzsoloyo; 02/10/2014 a las 11:48
  #2 (permalink)  
Antiguo 02/10/2014, 11:51
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Mostrar agrupaciones varias en consulta

La tuya es una pregunta que se ha hecho muchísimas veces, y no tiene una solucion desde la base de datos. No la tiene estrictamente hablando, porque el SQL sólo trabaja con datos reales, existentes, y lo que no existe, puer es así: no existe.
En resumen: Para poder darte valroes cero (0) donde una fecha no tiene datos relacionables, debe haber alguna tabla de datos de donde se pueda tomar esa fecha para listarla. No importa cual. Tiene que existir al menos una tabla donde todas esas fechas aparezcan.
La solucion más sencilla es hacerlo en la aplicación (todos lo hemos hecho alguna vez), a medida que construyes la tabla en pantalla.
Solucionarlo desde la base implica CREAR una tabla dodne existan esas fechas, aunque sea temporal, y no es una buena solución, porque esa tabla carece de utilidad y uso.

¿Se entiende?
__________________
¿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 02/10/2014, 12:25
Avatar de nolose  
Fecha de Ingreso: diciembre-2007
Ubicación: España
Mensajes: 165
Antigüedad: 16 años, 10 meses
Puntos: 2
Respuesta: Mostrar agrupaciones varias en consulta

Se entiende.


¡Gracias!

Etiquetas: campo, registro, select
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 13:44.