首页 > 数据库技术 > 详细

mssql CASE,GROUP BY用法

时间:2016-02-06 12:24:03      阅读:156      评论:0      收藏:0      [点我收藏+]
复制代码 代码如下:

--create database dbTemp
use dbTemp
create table test
(
Pid int identity(1,1) not null primary key,
Years datetime,
IsFirstSixMonths int default(0), --0表示上半年1表示下半年--
TotalCome int
)
insert test
select ‘2007-1-1‘,0,50
union
select ‘2007-3-1‘,0,60
union
select ‘2007-12-1‘,1,80
union
select ‘2008-1-1‘,0,100
union
select ‘2008-12-1‘,1,100

select * from test

select convert(char(4),Years,120) as ‘year‘,
IsFirstSixMonths=case when IsFirstSixMonths=0 then ‘上半年‘ when IsFirstSixMonths=1 then ‘下半年‘ END ,
sum(totalcome) as ‘sum‘ from test
group by IsFirstSixMonths,convert(char(4),Years,120)


select convert(char(4),Years,120) as ‘year‘,
IsFirstSixMonths=case when IsFirstSixMonths=0 then ‘上半年‘ ELSE ‘下半年‘ END ,
sum(totalcome) as ‘sum‘ from test
group by IsFirstSixMonths,convert(char(4),Years,120)

--DROP DATABASE dbtemp

结果如下:
复制代码 代码如下:

2007 上半年 110
2007 下半年 80
2008 上半年 100
2008 下半年 100

mssql CASE,GROUP BY用法

原文:http://www.jb51.net/article/17201.htm

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!