sql语句 case when or
来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/04/28 21:24:07
sql语句 case when or
自己写的sql
select date_format(createDate,'%Y-%m-%d') as createDate,
count(case when reqtype='runUp' then imei end) as runUp,
count(case when (reqtype='login' or reqtype='register') then imei end) as login
FROM (select distinct imei,date_format(createDate,'%Y-%m-%d') as createDate,reqtype
from stat_user_loginreq_201312 where 1=1 and DATE_FORMAT(createDate,'%Y-%m-%d') = '2013-12-01'
) AS g group by DATE_FORMAT(createDate,'%Y-%m-%d') order by createDate
查出来的count(case when (reqtype='login' or reqtype='register') then imei end)的值和
select COUNT(distinct imei),date_format(createDate,'%Y-%m-%d') from stat_user_loginreq_201312 where 1=1
and (reqtype='login' or reqtype='register')
and DATE_FORMAT(createDate,'%Y-%m-%d') = '2013-12-01'
group by DATE_FORMAT(createDate,'%Y-%m-%d') order by createDate
查出来的不一样
自己写的sql
select date_format(createDate,'%Y-%m-%d') as createDate,
count(case when reqtype='runUp' then imei end) as runUp,
count(case when (reqtype='login' or reqtype='register') then imei end) as login
FROM (select distinct imei,date_format(createDate,'%Y-%m-%d') as createDate,reqtype
from stat_user_loginreq_201312 where 1=1 and DATE_FORMAT(createDate,'%Y-%m-%d') = '2013-12-01'
) AS g group by DATE_FORMAT(createDate,'%Y-%m-%d') order by createDate
查出来的count(case when (reqtype='login' or reqtype='register') then imei end)的值和
select COUNT(distinct imei),date_format(createDate,'%Y-%m-%d') from stat_user_loginreq_201312 where 1=1
and (reqtype='login' or reqtype='register')
and DATE_FORMAT(createDate,'%Y-%m-%d') = '2013-12-01'
group by DATE_FORMAT(createDate,'%Y-%m-%d') order by createDate
查出来的不一样
count(case when (reqtype='login' or reqtype='register') then imei end)是计数reqtype='login' 和reqtype='register'的数量;
COUNT(distinct imei), 是当reqtype='login' 和reqtype='register'时去重计数imei的数量.
再问: 那我怎么写才能实现统计reqtype的值是login或者register的count(imei)值呢 count(case when (reqtype='login' or reqtype='register') then imei end)我这样查出来的只是reqtype='login' 的count值 就这点不明白
再答: count是计数,如果是:""实现统计reqtype的值是login或者register的count(imei)值"",也就是说当实现统计reqtype的值是login或者register有多少个 IMEI;此时与IMEI值本身有任何关系. 可以使用:sum(case when reqtype in ('login','register') then 1 else 0 end) 如果你是统计reqtype的值是login或者register时IMEI的值,此时与IMEI值有关,可以使用: sum(case when reqtype in ('login','register') then imei else 0 end)就行啦.
COUNT(distinct imei), 是当reqtype='login' 和reqtype='register'时去重计数imei的数量.
再问: 那我怎么写才能实现统计reqtype的值是login或者register的count(imei)值呢 count(case when (reqtype='login' or reqtype='register') then imei end)我这样查出来的只是reqtype='login' 的count值 就这点不明白
再答: count是计数,如果是:""实现统计reqtype的值是login或者register的count(imei)值"",也就是说当实现统计reqtype的值是login或者register有多少个 IMEI;此时与IMEI值本身有任何关系. 可以使用:sum(case when reqtype in ('login','register') then 1 else 0 end) 如果你是统计reqtype的值是login或者register时IMEI的值,此时与IMEI值有关,可以使用: sum(case when reqtype in ('login','register') then imei else 0 end)就行啦.
sql语句 case when or
SQL语句case when
sql case when请教
case when 语句
sql case when then ...虚心求教
Sql文的where中使用case when
case when语句结尾用end 还是end case
sql case when 老是语法报错,请问语法哪错了?
sql语句 where 编码 like '%[*]%' or 名称 like '[*]%' or 简码 like '%[
vhdl 并行语句进程语句,case语句,元件例化语句,when.else语句,哪个不是并行语句
能否在from 之后加 case when 语句?
case when 语句怎么写,举个例子