¿Es posible hacer esto en una vista?

31/03/2007 - 01:18 por Daymar | Informe spam
Hola a todos,

espero que me puedan ayudar. Les planteo mi escenario:

Tengo una base de datos en SQLServer con varias tablas, una de las tablas
(Pedidos) contiene los pedidos realizados por los clientes. Lo que necesito
hacer es una vista que saque un listado de los clientes que acumulan el 60%
de la cantidad pedida total (un cliente pide x Kgs), los clientes que
acumulan el 30% y el listado de los que acumulan el 10% del total.

Mi idea es obtener la suma total del Kgs pedidos y después hacer un select
con un campo añadido, por ejemplo, "grupo" donde indicare si forma parte del
grupo del 60%, del 30% o del 10%.

Luego con el crystal reports haré un report que me agrupara los clientes por
el campo añadido "grupo".

No se como hacerlo de esta forma, o a lo mejor existe una forma mejor de
hacerlo.

Toda ayuda sera de agradecer. Muchas gracias por todo.
 

Leer las respuestas

#1 Jose Mariano Alvarez
31/03/2007 - 03:29 | Informe spam
En el post ,
DIJO .
Hola a todos,

espero que me puedan ayudar. Les planteo mi escenario:

Tengo una base de datos en SQLServer con varias tablas, una de las tablas
(Pedidos) contiene los pedidos realizados por los clientes. Lo que necesito
hacer es una vista que saque un listado de los clientes que acumulan el 60%
de la cantidad pedida total (un cliente pide x Kgs), los clientes que
acumulan el 30% y el listado de los que acumulan el 10% del total.

Mi idea es obtener la suma total del Kgs pedidos y después hacer un select
con un campo añadido, por ejemplo, "grupo" donde indicare si forma parte del
grupo del 60%, del 30% o del 10%.

Luego con el crystal reports haré un report que me agrupara los clientes por
el campo añadido "grupo".

No se como hacerlo de esta forma, o a lo mejor existe una forma mejor de
hacerlo.

Toda ayuda sera de agradecer. Muchas gracias por todo.




Creo que si se puede hacer aunque lo mas facil para mi seria usar MDX y
reporting services en un modelo ROLAP.

Con que version de SQL estas trabajando?
Si es con 2005 busca RANK en la ayuda.
Haces rabgos de 10% y luego usas eso como una tabla derivada.
Tambien podrias intentar usando common table expressions CTE.




Saludos
Ing. Jose Mariano Alvarez


(Cambia los ceros por O y saca lo que sobra)


IMPORTANTE

Por favor traten de indicar la versión de SQL y Service Pack.
La inclusión de (CREATE, INSERTS, etc.) para poder reproducir el
problema también ayuda.

Preguntas similares