加入收藏 | 设为首页 | 会员中心 | 我要投稿 财气旺网 - 财气网 (https://www.caiqiwang.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

带有count和case语句的SQL查询

发布时间:2021-03-14 03:04:45 所属栏目:MsSql教程 来源:网络整理
导读:我需要找到有多少人在60天内提交(fil_dt)他们的纳税申报表,120天内,180天内,提交期限结束日期(fpe)的180天,3年不同(2006年,2007年,2008年) 以下声明将给我所有年份 我需要每年和每种可能性的计数.. 无论如何,我可以做2个查询吗? SELECT YEAR(A.FPE) AS "YEAR

我需要找到有多少人在60天内提交(fil_dt)他们的纳税申报表,120天内,180天内,提交期限结束日期(fpe)的180天,3年不同(2006年,2007年,2008年)

以下声明将给我所有年份
我需要每年和每种可能性的计数..
无论如何,我可以做2个查询吗?

SELECT YEAR(A.FPE) AS "YEAR",CASE                                              
  WHEN DAYS(A.FIL_DT) - DAYS(A.FPE) < 60 THEN '2 ' 
  WHEN DAYS(A.FIL_DT) - DAYS(A.FPE) < 120 THEN '4 '
  WHEN DAYS(A.FIL_DT) - DAYS(A.FPE) < 180 THEN '6 '
  WHEN DAYS(A.FIL_DT) - DAYS(A.FPE) > 180 THEN '6+'
 END AS "NBR MTH"                                  
WHERE A.FPE BETWEEN '2006-01-01' AND '2008-12-31'

我需要你的帮助
非常感谢

解决方法

然后写
SELECT YEAR(A.FPE) AS "YEAR",Sum(CASE WHEN DAYS(A.FIL_DT) - DAYS(A.FPE) < 60 
                  THEN 1 Else 0 End) SixtydayCount,Sum(CASE WHEN DAYS(A.FIL_DT) - DAYS(A.FPE) < 120 
                  THEN 1 Else 0 End) OneTwentyDayCount,Sum(CASE WHEN DAYS(A.FIL_DT) - DAYS(A.FPE) < 180 
                  THEN 1  Else 0 End) OneEightyDayCount,Sum(CASE WHEN DAYS(A.FIL_DT) - DAYS(A.FPE) > 180 
                  THEN 1 Else 0 End)  OverOneEightyCount  
    From Table A
    WHERE A.FPE BETWEEN '2006-01-01' AND '2008-12-31'
    Group By YEAR(A.FPE)

如果您希望120天计数和180天计数仅包括60岁以上且不足120岁的人,那么,

SELECT YEAR(A.FPE) AS "YEAR",Sum(CASE WHEN DAYS(A.FIL_DT) - DAYS(A.FPE) Between 60 And 119 
                  THEN 1 Else 0 End) OneTwentyDayCount,Sum(CASE WHEN DAYS(A.FIL_DT) - DAYS(A.FPE) Between 120 And 179 
                  THEN 1  Else 0 End) OneEightyDayCount,Sum(CASE WHEN DAYS(A.FIL_DT) - DAYS(A.FPE) >= 180 
                  THEN 1 Else 0 End)  OverOneEightyCount  
    From Table A
    WHERE A.FPE BETWEEN '2006-01-01' AND '2008-12-31'
    Group By YEAR(A.FPE)

(编辑:财气旺网 - 财气网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读