Creo que lo lias mucho...
Saca los datos en filas.
Nombre, Codigo, Total
Luego agrupas:
Campos de agrupacion
+
Casos
FROM
( CONSULTA)
GROUP BY Campos de Agrupacion
En tu caso:
SELECT
DATOS.NOMBRE <- Campos para agrupar por filas, pueden ser varios
SUM( CASE WHEN DATOS.CODIGO IN (1,2,3) THEN VOTOS ELSE 0 END ) as COLUMNA1,
SUM( CASE WHEN DATOS.CODIGO IN (4,5,6) THEN VOTOS ELSE 0 END ) as COLUMNA2,
ETC...
FROM
<- AQUI LA QUERY CON LOS DATOS EN FILAS. El resultado tiene alias DATOS, y devolvera las columnas NOMBRE, CODIGO y VOTOS o las que quieras... La query entre paréntesis
(
SELECT
A.Nombre, V.Codigo, V.Votos
FROM SYSDBA134147 V
INNER JOIN PROCESO A ON ( A.Campo1=V.Campo1) <- Desconozco tu modelo...
<- Aqui puede ir la where que limite los datos
) DATOS
<- FIN DE LA QUERY
Aqui puede ir una where sobre el reslutado DATOS
--AGRUPAS
GROUP BY
DATOS.NOMBRE
Y a probar...
Saludos
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino -
|