繁体   English   中英

选择计数案例计算

[英]select count case calculation

我有一个MS查询,该查询选择两个不同记录的计数,然后执行计算以从另一个中减去一个结果并将结果显示为difference

见下文:

Ticketnumber   |   Createdon    |    Modifiedon  |
00012121       |    16/03/2015  |    15/03/2015  |
00211335       |    10/03/2015  |    17/03/2015  |

SELECT  ( SELECT    COUNT(incidentbase.ticketnumber) AS val2
          FROM      IncidentBase
          WHERE     createdon >= GETDATE() - 7
        ) - ( SELECT    COUNT(incidentbase.ticketnumber) AS val1
              FROM      incidentbase
              WHERE     modifiedon >= GETDATE() - 7
            ) AS difference

我想根据结果是正数还是负数将结果显示为单个值,类似于:

WHEN difference => 0 then 1
WHEN difference =< 0 then 0 

有人可以帮忙吗?

只需使用CASE

SELECT CASE 
          WHEN (SELECT COUNT (incidentbase.ticketnumber) as val2 
                FROM IncidentBase 
                WHERE createdon >= GETDATE()-7) - 
               (SELECT count (incidentbase.ticketnumber) as val1 
                FROM incidentbase 
                WHERE modifiedon >= GETDATE()-7) <= 0 THEN 1
          ELSE 0 
       END AS flag 

您可以像这样使用“ case”:

declare @i1 int=5
select case when @i1 < 0 then 0 
when @i1=> 1 then 1 
end  results1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM