Ver Mensaje Individual
  #1  
Antiguo 06-03-2019
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Reputación: 19
Angel.Matilla Va por buen camino
Convertir datos de INTEGER a NUMERIC

Tengo este query:
Código SQL [-]
SELECT A.Censo, SUM(B.Votos) Votos, C.Votos VotosC, 100 * C.Votos / SUM(B.Votos) PorcenC
FROM Mesas A, Resultados B, Resultados CWHERE A.CodPrv = (SELECT Literal FROM Instalacion WHERE Etiqueta = 'Provincia') 
AND A.Municipio = :Codigo AND A.CodPrv = B.CodPrv AND A.Municipio = B.Municipio 
AND A.Codigo = B.Mesa AND B.Proceso = :Proceso 
AND A.CodPrv = C.CodPrv AND A.Municipio = C.Municipio AND A.Codigo = C.Mesa AND B.Proceso = C.Proceso AND C.Partido = 3
y, por ejemplo, me da esta salida
Cita:
Censo - 700
Votos - 536
VotosC - 57
PorcenC - 10
Es evidente que 57 no es el 10% de de 536; es algo más (10,63%). He intentado que en el cálculo me saque los decimales, para lo que en vez de la operación pura y dura he puesto:
Código SQL [-]
CAST(100 * C.Votos / SUM(B.Votos) AS NUMERIC(8, 2))
pero me sigue sacando el valor entero 10. ¿Cómo puedo resolverlo?

Última edición por Casimiro Notevi fecha: 06-03-2019 a las 23:01:49.
Responder Con Cita