Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/09/2010, 08:31
Avatar de djmashe
djmashe
 
Fecha de Ingreso: julio-2007
Ubicación: Posadas, Misiones
Mensajes: 52
Antigüedad: 17 años, 5 meses
Puntos: 2
Exclamación Sumar filas segun condicion

Saludos tengo un problema con una consulta SQL en PostgreSQL, más precisamente al sumar determinadas filas según cierto criterio.

Mi consulta es la siguiente:

Código SQL:
Ver original
  1. SELECT denom_ap AS Clases, COUNT(*) AS Total
  2. FROM te02_licencias AS L
  3.  INNER JOIN ta01_clases_por_licencia AS CL ON (L.id_licencia = CL.id_licencia)
  4.  INNER JOIN te03_clases AS C ON (CL.id_clase = C.id_clase)
  5. GROUP BY Clases
  6. ORDER BY Clases;

El cual da como resultado:


Código:
CLASES	TOTAL
--------------
A	16104
AB	23266
ABG	408
AC	2854
ACG	353
AD	2944
ADE	797
ADEG	15				
ADG	102				
AE	2335				
AEG	725				
AG	54				
B	44811				
BG	286				
C	4654				
CG	254				
D	5563				
DE	464				
DEG	88				
DG	27				
E	5542				
EG	272				
F	48				
G	38
Ahora lo que necesito es modificar esta consulta para poder dar como resultado la sumatoria de las clases que tengan tipos en común, o sea, sumar todas las filas que tengan en CLASES la letra “A”, las “B” y las demás todas por separado. O sea, que la salida sea:

Código:
CLASES	TOTAL
--------------
A	49957
B	45097
C	4908
D	6142
E	5814
F	48
G	38
Se que esto se puede hacer con SUM(), pero ¿como puedo hacer para indicar que si en el campo “denom_ap” aparece una A solo sume esos filas, si aparece una B sume las mismas, y así con todas las demás?

Desde ya muchas gracias a quien pueda ayudar…