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

Consulta mysql

Estas en el tema de Consulta mysql en el foro de Mysql en Foros del Web. Buenas tardes, Mi problema es que tengo una tabla por ejemplo con la siguiente estructura: Facturas numFactura CodCliente Fecha Importe Y necesito que una consulta ...
  #1 (permalink)  
Antiguo 16/01/2012, 06:11
 
Fecha de Ingreso: octubre-2010
Mensajes: 12
Antigüedad: 13 años, 6 meses
Puntos: 0
Consulta mysql

Buenas tardes,

Mi problema es que tengo una tabla por ejemplo con la siguiente estructura:

Facturas
numFactura
CodCliente
Fecha
Importe

Y necesito que una consulta me devuelva lo siguiente:

CodCliente, ImporteTotal, ImporteTrimestre1, ImporteTrimestre2, ImporteTrimestre3, ImporteTrimestre4

Mi consulta :

Select CodCliente, Sum(Importe) as ImporteTrimestre, Quarter(Fecha) as Trimestre
From Facturas
GROUP By Trimestre, CodCliente
Order By CodCliente, Trimestre

El problema es que por cada cliente me devuelve 4 registros, cada uno correspondiente a un trimestre y yo necesito que me devuelva los importes de los trimestres en columnas.

A ver si alguien me puede iluminar un poco porque por mas vueltas que le doy no veo la solución.

Muchas gracias
  #2 (permalink)  
Antiguo 16/01/2012, 09:46
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: Consulta mysql

Hola javiquero:

Éste tipo de consultas se ha tratado muchas veces... por lo que te recomiendo que antes de publicar una pregunta utilices la herramienta de búsqueda para ver si no es un tema repetido... la consulta quedaría más o menos así:

Código MySQL:
Ver original
  1. CodCliente,
  2. SUM(Importe) AS ImporteTrimestre,
  3. SUM(IF (QUARTER(Fecha) = 1, importe, 0)) AS Trimestre_1,
  4. SUM(IF (QUARTER(Fecha) = 2, importe, 0)) AS Trimestre_2,
  5. SUM(IF (QUARTER(Fecha) = 3, importe, 0)) AS Trimestre_3,
  6. SUM(IF (QUARTER(Fecha) = 4, importe, 0)) AS Trimestre_4
  7. FROM Facturas
  8. GROUP BY CodCliente
  9. ORDER BY CodCliente;

Saludos
Leo.
  #3 (permalink)  
Antiguo 16/01/2012, 11:32
 
Fecha de Ingreso: octubre-2010
Mensajes: 12
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Consulta mysql

Hola Leo,

Lo busqué pero no encontré nada, te aseguro que antes de preguntar doy bastantes vueltas.

Muchas gracias por la respuesta.
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 12:57.