sql中的casewhen可以用什么代替 sql语句,根据年纪阶段统计人数,根据性别分组?

[更新]
·
·
分类:行业
2273 阅读

sql中的casewhen可以用什么代替

sql语句,根据年纪阶段统计人数,根据性别分组?

sql语句,根据年纪阶段统计人数,根据性别分组?

select 性别,case when 年龄 between 20 and 29 then 1 else 0 end [20-29],case when 年龄 between 30 and 39 then 1 else 0 end [30-39],case when 年龄 between 40 and 49 then 1 else 0 end [40-49]from 表名group by 性别以上使用于大部分数据库只是在起别名上,只适用于sqlserveroracle的话起别名select 性别,case when 年龄 between 20 and 29 then 1 else 0 end

Oracle:CaseWhen用法?

1、不用CASE,用NVL函数即可:SELECTsid,NVL(sname,姓名为空)fromstuinfo;
2、CASE:
SELECTsid,
CASEWHENsnameISNULLTHEN姓名为空ELSEsnameENDCASE
fromstuinfo;

sql语句case when什么意思?

举个例子就明白了,例如在员工的工资表把员工的工资分成等级
1000以下为低薪,1000-2000为中等,其他为高薪
select (case when salary 1000 and salary
这样,工资等级就可以当做一个列来处理,包括where里面,可以写where (case when salary 1000 and salary
当做一个列就好了

sql中怎么实现整个表的转置?

SQL 表转置关键字 case when ,pivot
在 SQL Server 2005 之前,通常需要通过 case 子句来处理。
SQL 2005 后面可以使用pivot
下面介绍case when 用法,SQL 如下:
select ProductID,
sum( case when OrderMonth 5 then SubTotal end ) as 五月,
sum( case when OrderMonth 6 then SubTotal end ) as 六月,
sum( case when OrderMonth 7 then SubTotal end ) as 七月
from Orders
group by ProductID
pivot 用法:SQL 如下:
select sid, [1] as [database], [2] as [CSharp], [3] as [Xml]
from ( select sid, cid, mark from tbl_marks) t pivot
(
sum( mark )
for cid in ( [1], [2], [3] )
) as pvt