Ver Mensaje Individual
  #7  
Antiguo 25-02-2019
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Ubicación: Toledo - España
Posts: 1.429
Reputación: 21
Angel.Matilla Va por buen camino
Cita:
Empezado por mamcx Ver Mensaje
Ok, vamos a ver si te entendi. El truco general es que debes proveer tu propia función de comparación (similar a https://stackoverflow.com/questions/...ustom-comparer) pero en sql. Básicamente, debes crear un campo extra que cambie la lógica que determina que es "mayor que":
¡Perfecto! El query me ha quedado así, tomando como base el ejemplo que puse al principio:
Código PHP:
SELECT SUM(A.Votos) Votos, A.Partido, B.Sigla,
       CASE 
WHEN Partido < 0 THEN 0 ELSE 1 END AS c
  FROM Resultados A
, Partidos B 
 WHERE A
.CodPrv = (SELECT Literal FROM Instalacion WHERE Etiqueta = 'Provincia') 
   AND 
A.Proceso = 34 AND A.CodPrv = B.CodPrv AND A.Partido = B.Codigo 
   
AND A.Municipio IN (SELECT Municipio FROM Junta WHERE CodPrv = A.CodPrv AND Partido = 2)
 
GROUP BY A.Partido, B.Sigla 
 ORDER BY c DESC
, Votos DESC 
y la salida es ahora de esta forma:
Responder Con Cita