广

MSSQL

  • MYSQL
  • MSSQL
  • Redis
  • MongoDB
  • oracle数据库
  • 数据管理

    mssql CASE,GROUP BY用法

    2018-04-25 21:45:47 次阅读 稿源:互联网
    广告
    全网推广平台,软文发布
    代码如下:

    --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

    一起学吧部分文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与一起学吧进行文章共享合作。

    广告
    广告
    广告
    广告