SQL Server - Sacar un Promedio con Stored Procedure

 
Vista:

Sacar un Promedio con Stored Procedure

Publicado por Pedro (8 intervenciones) el 25/02/2009 13:50:01
Hola a To2.

Necesito sacar un promedio de una columna y luego cada % para cada registro. Para esto me dijieron que utilizara un Stored Procedure, pero no se como se utilizan y cual es la sintaxis.

Deberia ser algo asi el resultado

Grupo Total Porcentaje
A = 4 44,4
B = 2 22,2
C= 3 33,3

Agradeceré que me puedan ayudar con esto.

Slds.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Sacar un Promedio con Stored Procedure

Publicado por Mau (67 intervenciones) el 26/02/2009 17:04:27
Que tal Pedro, en estos casos ayuda mucho que nos proporciones al menos la estructura de tu tabla, así como la versión que ocupas de SQL Server. Pero vamos a suponer que se trata de una tabla con dos campos, uno llamado Cliente y otro llamado Ventas, del tipo VARCHAR y MONEY respectivamente. También vamos a suponer que estás utilizando SQL Server 2005, que es lo normal.

En realidad no es necesario que hagas un stored procedure para hacer el cálculo de un promedio, ya que lo puedes obtener con un simple SELECT, como verás a continuación:

SELECT AVG(ventas)
FROM Tabla1

Esto te daría el promedio de todos los registros para la Tabla1

En cuanto al % que representa sobre el total cada importe, en Oracle es muy simple porque incorpora una función que lo hace, en SQL Server me parece que no sería igual de intuitivo, aunque puede realizarse también.

SELECT CLIENTE,
VENTAS,
(VENTAS * 100.0 ) / (SELECT SUM(VENTAS) FROM TABLA1) AS RATIO
FROM TABLA1

Como verás no es tan intuitivo, especialmente cuando llegue el momento de agrupar por más de un campo.

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar