sqlserver求比例,sql 占比计算

sqlserver 里怎么求百分比

select REALHANDLER, count(*) as 总数, sum(case when status='RESOLVED' then 1 else 0 end)as 已解决,

成都创新互联于2013年成立,是专业互联网技术服务公司,拥有项目成都网站建设、网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元印台做网站,已为上家服务,为印台各地企业和个人服务,联系电话:028-86922220

sum(case when status!='RESOLVED' then 1 else 0 end)as 未解决,

sum(case when status='RESOLVED' then 1 else 0 end)+0.0001/count(*) as 完成率

from INCIDENT

group by REALHANDLER

)+0.0001试一下 因为返回的类型和sum(case when status='RESOLVED' then 1 else 0 end),count(*) 一样

SQLSERVER数据库求每列不同数据所占百分比

标准答案:

declare @ACount int

select @ACount=count(*) from 表 --计算总数,避免放在大数据的select中影响效率

if @ACount0 --判断是否有记录,无记录时@Acount为0,不能做除数

select 表.name,cast(count(*) as numeric(10,3))/cast(@ACount as numeric(10,3)) from 表 group by 表.name --做百分比时要避免直接用/,会整除的,就无法判断%比例了。

else

select '表中无记录,无法统计比例'

--小数点后保留三位,换算成%比,应该如12.5%的精确度,numeric(10,3)前面的10如果长度不够可以根据需要修改

Sqlserver怎么求一个数占总数的百分之几

select 12/23 * 100 ||'%' from dual;

mysql 服务器支持 # 到该行结束、-- 到该行结束 以及 /* 行中间或多个行 */ 的注释方格:

mysql SELECT 1+1; # 这个注释直到该行结束

mysql SELECT 1+1; -- 这个注释直到该行结束

mysql SELECT 1 /* 这是一个在行中间的注释 */ + 1;

mysql SELECT 1+

/*

这是一个

多行注释的形式

*/

1;

注意 -- (双长划) 注释风格要求在两个长划后至少有一个空格!

尽管服务器理解刚才描述的注释句法,但 MySQL 客户端的语法分析在 /* ... */ 注释方式上还有所限止:

单引号和双引号被用来标志一个被引用字符串的开始,即使是在一个注释中。如果注释中的引号没有另一个引号与之配对,那和语法分析程序就不会认为注释结束。如果你以交互式运行 mysql,你会产生困惑,因为提示符从 mysql 变为 ' 或 "。

一个分号被用于指出当前 SQL 语句的结束并且跟随它的任何东西表示下一行的开始。

不论你是以交互式运行 mysql 还是将命令放在一个文件中,然后以 mysql some-file 告诉 mysql 读取它的输入,这个限制均存在。


当前名称:sqlserver求比例,sql 占比计算
新闻来源:http://myzitong.com/article/hcoicp.html