SQL - Sumar Columna Para sacar %

 
Vista:

Sumar Columna Para sacar %

Publicado por José R. Castillo (3 intervenciones) el 21/06/2007 22:13:29
Saludos tengo un problemita con esto............ necesito sumar los datos de una columna en especifico ya que con este numero que obtengo de esta suma..podre sacar el porcentaje que necesito.

Bueno miren para explicarme mejor esta es una imagen del query analyzer y de lo que devuelve my query
http://img526.imageshack.us/my.php?image=test1lv1.jpg
Necesito obtener la suma total de la columna asignados y con este numero sacar el porcentaje...........o sea la (Asignados / Suma de Asignados * 100)...

Por que lo que estoy tratando de hacer es un reporte con este formato
http://img526.imageshack.us/my.php?image=test2ej0.jpg

Este es mi query:
select office.route,max(medic.city) as City,specialty.description,
count(office.medicid) as Asignados
from medic
inner join office on medic.medicid=office.medicid
inner join route on office.route=route.route
inner join specialty on medic.specialtyid=specialty.specialtyid
where route.compid=3 and office.status='A'
group by office.route,specialty.description order by office.route,medic.city asc
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:Sumar Columna Para sacar %

Publicado por Isaias (5073 intervenciones) el 22/06/2007 00:19:51
La respuesta que te dio Monica de Emagister, ¿No te sirvio?
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

RE:Sumar Columna Para sacar %

Publicado por Isaias (5073 intervenciones) el 22/06/2007 00:19:53
La respuesta que te dio Monica de Emagister, ¿No te sirvio?
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

RE:Sumar Columna Para sacar %

Publicado por José Castillo (3 intervenciones) el 22/06/2007 17:23:29
Nop no me sirvio

declare @tbl table (route int,City varchar(20), description varchar(20), Asignados decimal(15,2))

insert into @tbl

select office.route,max(medic.city) as City,specialty.description,
count(office.medicid) as Asignados
from medic
inner join office on medic.medicid=office.medicid
inner join route on office.route=route.route
inner join specialty on medic.specialtyid=specialty.specialtyid
where route.compid=1 and office.status='A'
group by office.route,specialty.description

select a.route,a.City,a.description,a.Asignados,(a.Asignados/b.TotalAsignados)*100 as Porcentaje
,TotalAsignados from
@tbl a
inner join
(select route, City, Sum(Asignados) as TotalAsignados
from @tbl group by route,city) b
on a.route = b.route and a.City = b.City

Perdona probe bien el query pero no me sirvio.......en total asignados la cantidad entre la que divido no es la cantidad de medicos que contiene la compañia sino la cantidad de medicos asignados a esa ruta.

Aqui esta la imagen de lo que te hablo

http://img519.imageshack.us/my.php?image=test3mz7.jpg

En total asignados debiera aparecer la suma de la cantidad de medicos asignados para esa compañia....por ejemplo en la imagen de arriba debiera aparecer en todos los camposd e totalasignados el valor 2384 que es el total de los medicos que contiene esa compañia de esa ruta.............
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