Seleccionar el detalle y total en el mismo registro. SQL

Quisiera saber como puedo hacer un select que me permita obtener en el mismo registro la suma de todos los registros de un campo, y el valor especifico de cada campo. Trato de ilustrar un poco más mi pregunta:

Tabla1

Campo1 Campo2

AA 2

BB 4

CC 3
Select campo1, campo2, sum(campo2) from tabla1
Resultado requerido:
Campo1 Campo2 sum(campo2)
AA 2 9
BB 4 9
CC 3 9

Respuesta
1

SELECT campo1, campo2, sum(campo2) as Tot OVER () FROM tabla1;

Esto te funcionará en PostgreSQL. No se si hay alguna otra SGBD que incorpore esta extensión u otra parecida.

Como lo mas probable es que uses otra, la única forma que se me ocurre es hacer una consulta en dos pasos.

1ª consulta o view ("Q1"): SELECT c1, sum(c2) as Tot FROM tabla1 GROUP BY c1;

2ª: SELECT tabla1.*, Q1.tot FROM tabla1, Q1 USING c1; (o SELECT tabla1.*, Q1.tot FROM tabla1, INNER JOIN Q1 ON tabla1.c1 = Q1.c1);

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas