㈠ sql语句计算男女员工各占比例。
假设表员工档案里有性别、姓名两个字段
select count(*) as 员工总数,sum(case when 性别=男 then 1 else 0 end) 男员工数,sum(case when 性别=男 then 1 else 0 end)/nullif(count(*),0) 男所占比例,sum(case when 性别=女 then 1 else 0 end) 女员工数,sum(case when 性别=女 then 1 else 0 end) /nullif(count(*),0)女所占比例
from 员工档案
你自己试试看吧
楼上的写的不错,但是最好注意一些除0问题,要是张空表会报除0错误的。
㈡ sql 统计同类物品个数在总数中占的比例
假设你这个表名是 T,你要的结果是下面这一句 SQL:
Select T1.类型,T1.数量小计/T2.数量合计 as 比例
(Select T.类型,sum(T.数量) as 数量小计 from T Group By T.类型) T1
Left Join
(Select sum(数量) as 数量合计 from T) T2
ON 1=1
㈢ sql怎么统计所占百分比
超过百分之几对吧?
首先你一定知道一共有多少对吧?假设就是sum个用户
然后你可以根据积分查出来有多少用户<500的对吧.假设少与N个
那么你想要的就是N/sum
㈣ sql 查询每个存货编码的“数量”列出现最多的一项,并统计占比
create table temp as
select 编码,数量,rank()over(order by 数量 desc) as rn
from table_01
where 数量 is not null
;
select distinct
编码,
数量,
出现最多的次数 ,
出现最多的次数 /总数量 as 占比
from
(select 编码,
数量,
sum(rn) as 出现最多的次数
from temp
where rn = 1
group by 编码, 数量)a
left join
(select 编码,
max(rn) as 总数量
from temp
group by 编码
) b on a.编码 = b.编码
类似这样的 ,代码没调试,主要在于用rank按照数量降序排列;
㈤ 求一个sql语句,查询某个值在数据集中的占比情况
写一个sql语句恐怕不行。
应当先写一段sql语句,计算出links字段的总和。
然后再写一段sql语句,以links字段的每一个值除以links字段的总和,这样就能得出links字段每个值在该字段总和里的占比。
这种情况下,就要写两端sql语句。
㈥ 用sql语句如何计算百分比或者统计数据个数
declare @biXiu int,@Zongshu int
select @biXiu=count(*) from course where type='必修'
select @Zongshu=count(*) from course
select cast(@biXiu*100.0/@Zongshu as varchar)+'%'
--其中 @biXiu代表必修个总数
--补充字符串说明
SELECT CAST('123.456' as decimal) 将会得到 123(小数点后面的将会被省略掉)。如果希望得到小数点后面的两位。则需要把上面的改为SELECT CAST('123.456' as decimal(38, 2))
㈦ SQL如何统计某段时间某业务员销售总额、指定商品销售额及该商品占比
select 业务员,销售总量,A产品销售数量,(A产品销售数量/销售总量,) as A产品占比 from (select 业务员,sum(销售数量) as 销售总量,(select sum(销售数量) from tablename where a.业务员=业务员 and 产品='A' group by 业务员) as A产品销售数量 from tablename a where 业务员='张三' group by 业务员) a
㈧ sql 求占比
select
t1.province,
cast(count(1)*100/(selectcount(1)fromprovince)asvarchar(10))+'%'
from
provincet1
groupby
t1.province
㈨ sql 怎么求比例
declare @sumNum decimal(9,2)
set @sumNum=select sum([销售额]) from [产品销售表]
select [产品],sum([销售额]) as [销售额] ,sum([销售额])/@sumNum as [占比] from [产品销售表]
group by [产品]
㈩ 使用sql语句计算百分比
1、若针对每行求百分比: select SA/TotelTime ,SB/TotelTime ,SC/TotelTime ,SD/TotelTime ,SE/TotelTime from 表名 。
2、若是对总计后的值求百分比: select sum(SA)/sum(TotelTime) ,sum(SB)/sum(TotelTime) ,sum(SC)/sum(TotelTime) ,sum(SD)/sum(TotelTime) ,sum(SE)/sum(TotelTime) from 表名
3、当然,以上都是以小数形式显示结果,若要以百分比形式显示结果:乘以100,并保留两位小数,然后加上“%”即可。
如:round((SA/TotelTime)*100,2) & "%"