MySQL - meses por columna

 
Vista:
sin imagen de perfil

meses por columna

Publicado por anto (2 intervenciones) el 14/06/2017 00:19:42
Quiero hacer una consulta que muestre una tabla con los meses en columnas
y la cantidad de veces que ha faltado una persona por cada mes, sería algo como esto:

Nombre | Enero | Febrero | Marzo | Abril | ....
Persona1 | 12 | 21 | 32 | 26 | .....
Persona2 | 12 | 21 | 32 | 26 | .....
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 117
Bronce
Ha mantenido su posición en MySQL (en relación al último mes)
Gráfica de MySQL

meses por columna

Publicado por Nicolas (46 intervenciones) el 14/06/2017 13:42:38
Hola anto.
Se me ocurre que en el Select de tu consulta incluir una subconsulta por cada mes. No sé si es la mejor opción o forma de hacerlo pero espero que te sea de ayuda.

Abrazo.

Un ejemplo:
SELECT DISTINCTROW Pedidos.Id_Producto,
Pedidos.Cantidad,
(SELECT DISTINCTROW Productos.Nombre FROM Productos WHERE
Productos.Id_Producto = Pedidos.Id_Producto) AS ElProducto FROM
Pedidos WHERE Pedidos.Cantidad > 150 ORDER BY Pedidos.Id_Producto;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 953
Oro
Ha mantenido su posición en MySQL (en relación al último mes)
Gráfica de MySQL

meses por columna

Publicado por leonardo_josue (414 intervenciones) el 14/06/2017 16:10:11
Hola anto:

Nos dices qué es lo que quieres pero no nos dices cómo tienes estructurada tu información ni tampoco nos dices qué es lo que has intentado hacer...

Puedo suponer que tu información la tienes en forma de registros, es decir, algo así:

1
2
3
4
5
6
7
8
9
10
11
12
mysql> SELECT * FROM tabla;
+----------+--------+------------+
| id_tabla | nombre | fecha      |
+----------+--------+------------+
|        1 | hugo   | 2017-01-07 |
|        2 | hugo   | 2017-01-19 |
|        3 | hugo   | 2017-02-01 |
|        4 | paco   | 2017-01-01 |
|        5 | luis   | 2017-02-06 |
|        6 | luis   | 2017-02-14 |
+----------+--------+------------+
6 rows in set (0.00 sec)

Hay muchas formas de obtener lo que quieres, por ejemplo con subconsultas o con SUMAS condicionales... Pregúntale a SAN GOOGLE que te diga "cómo pasar filas a columnas en MySQL" y estoy seguro que te acercará a la respuesta:

http://lmgtfy.com/?q=c%C3%B3mo+pasar+filas+a+columnas+en+MySQL

Saludos
Leo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

meses por columna

Publicado por c (2 intervenciones) el 15/06/2017 16:24:18
tengo las siguientes tablas:

Persona
-idPersona
-Nombre

Asistencia
-idAsistencia
-Inasistencia
-Persona_idPersona

como les comentaba, quería que mostrara en una tabla todos los meses pero en columnas, por ejemplo en el mes de Enero la persona1 falto 12 veces y así sucesivamente.

Nombre | Enero | Febrero | Marzo | Abril | ....
Persona1 | 12 | 21 | 32 | 26 | .....
Persona2 | 12 | 21 | 32 | 26 | .....

Les agradezco lo que me han comentado... saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar