⑴ sql查询某字段中特定值出现的概率 比如一个字段A中有 A 1 2 3 2 那么2出现的概率为50% 这个问题的sql怎么写
create table #aa(a varchar(10))
insert into #aa values('a')
insert into #aa values('1')
insert into #aa values('2')
insert into #aa values('3')
insert into #aa values('2')
select (select COUNT(*) from #aa where a='2')/1.0/ COUNT(*) from #aa
除1.0是为了把整数转成小数。
⑵ 求助一个sql语句,用来统计员工的成功率
select t.业务总量,(select sum(p.成功状态) from data p where p.员工名字=t.员工名字 成功状态='成功')/t.业务总量 as 成功率
from
(select sum(成功状态) as 业务总量,员工名字 from data group by 员工名字) t
⑶ SQL语句如何按照概率随机抽取数据
--题目没有表达清楚,我就写个差不多的sql给你吧。
--通过case语句来判断返回一个概率
selectid,state
casestatewhen1then0.1when2then0.3else0.05endas概率
from表a
⑷ SQL怎么统计个数
不同数据库的系统表可能不一样,比如informix就是systables
的
tabname。
informix数据库:
统计个数:
select
count(*)
from
systables
where
tabname
like
'%abc%'
查看表:
select
tabname
from
systables
where
tabname
like
'%abc%'
其他数据库的话,系统表可能是sysobjects,对应的列可能也有不同,看你的情况改吧。
⑸ 用SQL语句计算列中某些字段出现的频率
单独一个SQL语句很难实现你的需求, 必须借助函数方可实现. 一个基本思路是将现有的记录中的value值先单列生成一个数据集(指Value里面逗号分隔开的值, 即AA, BB, CC这种值), 然后根据这个结果集再得到最终结果中的含有AA, BB, AA,CC的结果集; 再最后就是统计得到需要的结果了.
请问一下你的数据库是SQL Server还是Oracle?
⑹ SQL 语句咨询抽取百分20数据
1、right(userid,1)的意思是取userid字段的从右边数第一位,也就是最后一位;
2、right(userid,1) in (0,1) 的意思是,取userid的最后一位是0或1 的数据;
3、问题上说该语句可以抽取20%的数据,推测:userid字段的最后一位必然是数字(0,1,2,3,4,5,6,7,8,9),那么筛选出0和1,那概率是20%,前提是userid末尾数字分布均匀;
#第三条只是推测,具体得看数据了;
⑺ 用SQL怎么计算完成率
计算完成率需要知道任务的总数以及已经完成的数量。假设有一个任务表Task,包含任务ID、任务名称、任务状态等字段,可以使用SQL语句计算完成率,如下所示:
上SQL语句分别计算了任务总数、已完成任务数和完成率。其中,第一个SELECT语句计算了任务总数;第二个SELECT语句计算了已完成任务数,通过WHERE条件过滤状态为“completed”的弊埋任务;第三个SELECT语句使用了子查询来获取任务总数,并计算完成率。瞎卜举最后的结果会返回任务的完成率,例磨碧如:75%。