可以试试下面一句话,没有调试哈select a.大类名称,a.销售额,(100.0*a.销售额/sum(b.销售额)) as 占全部销售额的比例 from table a,table b where a.大类名称 = b.大类名称 and a.销售额 = b.销售额 group by a.大类名称,a.销售额
最好通过VIEW来实现,不然每次检索是都要从新计算, 修改 j9988(j9988) 的T-SQL CREATE VIEW SALESRATIO AS select 大类名称, 销售额, str((CONVERT(NUMERIC(10,3),100.0*销售额/(select sum(销售额) from [table]))),10,2)+'%' as 占全部销售额的比例 from [table] GO SELECT * FROM SALESRATIO
select 大类名称, 销售额, str((100.0*销售额/t1.总销售额),10,2)+'%' as 占全部销售额的比例 from table ,(select 总销售额=sum(销售额) from table)t1
select 大类名称,销售额, convert(convert(varchar(5), (销售额/(select sum(销售额)from tablename)*100))+'%' from tablename
declare @mysum float select @mysum=sum(销售额) from tablename select 大类名称 , 销售额 , convert(varchar(5),销售额 /@mysum *100)+'%' 占全部销售额的比例 from tablename
from table a,table b
where a.大类名称 = b.大类名称 and a.销售额 = b.销售额
group by a.大类名称,a.销售额
修改 j9988(j9988) 的T-SQL
CREATE VIEW SALESRATIO
AS
select
大类名称,
销售额,
str((CONVERT(NUMERIC(10,3),100.0*销售额/(select sum(销售额) from [table]))),10,2)+'%' as 占全部销售额的比例
from [table]
GO
SELECT * FROM SALESRATIO
大类名称,
销售额,
str((100.0*销售额/t1.总销售额),10,2)+'%' as 占全部销售额的比例
from table ,(select 总销售额=sum(销售额) from table)t1
select 大类名称,销售额,
convert(convert(varchar(5),
(销售额/(select sum(销售额)from tablename)*100))+'%'
from tablename
select @mysum=sum(销售额) from tablename
select 大类名称 , 销售额 , convert(varchar(5),销售额 /@mysum *100)+'%' 占全部销售额的比例 from tablename