Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

suma de columna en consulta

Estas en el tema de suma de columna en consulta en el foro de SQL Server en Foros del Web. Hola a todo mundo ..una duda..si tengo una consulta q me arroja una columna con 3 renglones y cada renglon tiene un valor, como le ...
  #1 (permalink)  
Antiguo 22/07/2011, 14:51
 
Fecha de Ingreso: junio-2011
Mensajes: 329
Antigüedad: 12 años, 9 meses
Puntos: 2
suma de columna en consulta

Hola a todo mundo ..una duda..si tengo una consulta q me arroja una columna con 3 renglones y cada renglon tiene un valor, como le puedo hacer para sumar esa columna en la mismo query y q me arroje el resultado..?alguien me puede ayudar con eso.?.saludos y gracias

1 .- 100
2.- 200
3.- 300
-----------
Resultado
  #2 (permalink)  
Antiguo 22/07/2011, 14:57
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: suma de columna en consulta

select sum(campo) from tabla

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 22/07/2011, 15:29
 
Fecha de Ingreso: junio-2011
Mensajes: 329
Antigüedad: 12 años, 9 meses
Puntos: 2
Respuesta: suma de columna en consulta

lo q pasa es q lo estoy sacando de una consulta y no me esta sumando, necesito sumar el campo meta...para posteriormente hacer una division con ese dato dentro del mismo query

ID Meta Venta Diferencia Porcentaje Nombre
58 191612.90 2610.73 77743.0656 97.98 RMARTINEZ
40 174193.55 3580.03 69468.8771 96.96 CGAXIOLA
25 162580.52 5656.65 62522.2777 94.86 LSANDOVAL
160 180000.00 6339.06 69144.8108 94.80 RBEAS
57 168387.10 7052.46 63561.4847 93.81 ALOPEZ
76 NULL 1630.72 NULL NULL
172 NULL -128.56 NULL NULL
------------------
992903.11

pero me lo pone asi

ID Meta MetaTotal Venta Diferencia PorcentajeNombre
58 191612.90 2874193.50 2610.73 77743.0656 97.98 RMARTINEZ
40 174193.55 3309677.45 3580.03 69468.8771 96.96 CGAXIOLA
25 162580.52 6503220.80 5656.65 62522.2777 94.86 LSANDOVAL
160 180000.00 5580000.00 6339.06 69144.8108 94.80 RBEAS
57 168387.10 6230322.70 7052.46 63561.4847 93.81 ALOPEZ
76 NULL NULL 1630.72 NULL NULL
172 NULL NULL -128.56 NULL NULL

este es mi query..


SELECT SALES2.ID,
MetasxVendedor.Meta,
sum (meta) as MetaTotal,
SUM(SALES2.VENTA) AS Venta,
MetasxVendedor.Meta / 31 * 13 - SUM(SALES2.VENTA) AS Diferencia,
(MetasxVendedor.Meta / 31 * (Day( getdate() )-1) - SUM(SALES2.VENTA)) / (MetasxVendedor.Meta / 31 * (Day( getdate() )-1)) * 100 AS Porcentaje,
case
when metasxvendedor.meta is null
THEN ''
else susuarios.logname end
as Nombre

FROM SALES2
LEFT OUTER JOIN
SUsuarios ON SALES2.ID = SUsuarios.id AND SUsuarios.sid = SALES2.SID LEFT OUTER JOIN MetasxVendedor ON SALES2.SID = MetasxVendedor.SID
AND SALES2.ID = MetasxVendedor.ID
AND (MetasxVendedor.IDATE >= '7/01/2011')
AND (MetasxVendedor.IDATE <= '7/21/2011')
WHERE (SALES2.VENTA <> 0)
AND (SALES2.SID = '3')
AND (SALES2.IDATE >= '7/01/2011')
AND (SALES2.IDATE <='7/21/2011')
and ltrim(line) in ('FRI')



GROUP BY SUsuarios.logname, SUsuarios.id, SALES2.ID, MetasxVendedor.Meta
ORDER BY (MetasxVendedor.Meta / 31 * (Day( getdate() )-1) - SUM(SALES2.VENTA)) / (MetasxVendedor.Meta / 31 * (Day( getdate() )-1)) * 100 DESC
  #4 (permalink)  
Antiguo 25/07/2011, 07:26
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: suma de columna en consulta

Si haces un
GROUP BY SUsuarios.logname, SUsuarios.id, SALES2.ID, MetasxVendedor.Meta estas agrupando por Id el cual es un campo diferente en cada renglon por lo que no te puede hacer la sumatoria, deberias de agrupar por campos diferentes o nada mas por el campo por el cual vas a hacer el agregado :)

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: columna, suma
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:36.