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

[SOLUCIONADO] Contar varios registros para generar estadisticas

Estas en el tema de Contar varios registros para generar estadisticas en el foro de Mysql en Foros del Web. Hola amigos, miren mi duda es bien objetiva tengo una tabla llamada categorias que almacena varios modelos de equipo. Yo quiero sacar unas estadísticas por ...
  #1 (permalink)  
Antiguo 17/03/2014, 12:40
Usuario no validado
 
Fecha de Ingreso: septiembre-2007
Ubicación: Cuba
Mensajes: 202
Antigüedad: 16 años, 7 meses
Puntos: 5
Pregunta Contar varios registros para generar estadisticas

Hola amigos, miren mi duda es bien objetiva tengo una tabla llamada categorias que almacena varios modelos de equipo. Yo quiero sacar unas estadísticas por modelo, es decir el total de equipos (que estan en otra tabla) que hay para cada modelo. Espero me puedan ayudar. No se si lo mas conveniente sea hacer un SELECT COUNT() por cada modelo que tengo, pues imaginense que tengo más de 100. Grcias por todo y espero me puedan ayudar.
Salu2
  #2 (permalink)  
Antiguo 18/03/2014, 02:09
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Contar varios registros para generar estadisticas

Habria que ver la estructura de esas dos tablas... pero si esta bien hecha tendrás:

tblCategorias
idCat PK
categoria


tblEquipos

idEquipo PK
idCat FK
nombre


Código MySQL:
Ver original
  1. SELECT c.categoria, COUNT(e.idEquipo) Equipos
  2. FROM tblEquipos e INNER JOIN tblCategorias c ON e.idCat=c.idCat
  3. GROUP BY c.idCat;
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 18/03/2014, 05:35
Usuario no validado
 
Fecha de Ingreso: septiembre-2007
Ubicación: Cuba
Mensajes: 202
Antigüedad: 16 años, 7 meses
Puntos: 5
Respuesta: Contar varios registros para generar estadisticas

Gracias por responde quimfv
Lo único que te debo aquí es la FK, pues no la tengo pero lo demás sí
Ahora lo que no entiendo mucho en tu consulta son las letras que pones (e y c) podrías explicarme mejor ???

Imagino que esa query te vaya contando el total de equipos que tiene cada categoría verdad????

Gracias por todo
  #4 (permalink)  
Antiguo 18/03/2014, 05:57
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Contar varios registros para generar estadisticas

Cita:
Lo único que te debo aquí es la FK, pues no la tengo pero lo demás sí
No tienes la FK pero tienes el campo de enlace entre las tablas....?

Si tienes el campo aún que no tengas la FK definida funcionará.

Si NO tienes el campo no se puede hacer lo que pides.
(En este caso muestranos lo que tienes, a ver que se puede hacer)

Cita:
Ahora lo que no entiendo mucho en tu consulta son las letras que pones (e y c) podrías explicarme mejor ???
Son alias, simplifican el codigo.... tblEquipos-> e, tblCategorias-> c

Cita:
Imagino que esa query te vaya contando el total de equipos que tiene cada categoría verdad????
Si, es lo que pedias, no?
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #5 (permalink)  
Antiguo 18/03/2014, 06:02
Usuario no validado
 
Fecha de Ingreso: septiembre-2007
Ubicación: Cuba
Mensajes: 202
Antigüedad: 16 años, 7 meses
Puntos: 5
Respuesta: Contar varios registros para generar estadisticas

Gracias por todo, acabo de solucionarlo con la consulta que me dista. Gracias mano. Un abrazo

Última edición por reyvi; 18/03/2014 a las 06:36
  #6 (permalink)  
Antiguo 25/03/2014, 08:21
Usuario no validado
 
Fecha de Ingreso: septiembre-2007
Ubicación: Cuba
Mensajes: 202
Antigüedad: 16 años, 7 meses
Puntos: 5
Respuesta: Contar varios registros para generar estadisticas

Cita:
Iniciado por quimfv Ver Mensaje
Código MySQL:
Ver original
  1. SELECT c.categoria, COUNT(e.idEquipo) Equipos
  2. FROM tblEquipos e INNER JOIN tblCategorias c ON e.idCat=c.idCat
  3. GROUP BY c.idCat;
si quisiera poner una clausula WHERE para poder realizar un filtrado por un rango de fecha, es posible?????

claro, en la tabla tblEquipos existiría un campo que almacena la fecha de entrada (Fecha_entrada)
  #7 (permalink)  
Antiguo 25/03/2014, 12:04
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Contar varios registros para generar estadisticas

Código MySQL:
Ver original
  1. SELECT c.categoria, COUNT(e.idEquipo) Equipos
  2. FROM tblEquipos e INNER JOIN tblCategorias c ON e.idCat=c.idCat
  3. WHERE fecha BETWEEN '2014-01-01' AND '2014-02-01'
  4. GROUP BY c.idCat;
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: estadisticas, registros, 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 17:31.