Sql server 2008 查询以查找连续两个月(列)为负数的行
我有一个SQL Server 2008表,表中的列表示每12个月一次。我想找到连续两个月余额为负的行 编辑:我需要对所有的正数列求和,所以我使用了这个。如果有人知道更简单的方法,请告诉我Sql server 2008 查询以查找连续两个月(列)为负数的行,sql-server-2008,Sql Server 2008,我有一个SQL Server 2008表,表中的列表示每12个月一次。我想找到连续两个月余额为负的行 编辑:我需要对所有的正数列求和,所以我使用了这个。如果有人知道更简单的方法,请告诉我 SELECT SUM(case when Oct > 0 then Oct else 0 end) + SUM(case when Nov > 0 then Nov else 0 end) + SUM(case when Dec > 0 then D
SELECT SUM(case when Oct > 0 then Oct else 0 end) +
SUM(case when Nov > 0 then Nov else 0 end) +
SUM(case when Dec > 0 then Dec else 0 end) +
SUM(case when Jan > 0 then Jan else 0 end) +
SUM(case when Feb > 0 then Feb else 0 end) +
SUM(case when Mar > 0 then Mar else 0 end) +
SUM(case when Apr > 0 then Apr else 0 end) +
SUM(case when May > 0 then May else 0 end) +
SUM(case when Jun > 0 then Jun else 0 end) +
SUM(case when Jul > 0 then Jul else 0 end) +
SUM(case when Aug > 0 then Aug else 0 end) +
SUM(case when Sep > 0 then Sep else 0 end) as 'Sum of positive months'
你可以直接做到:
select * from tablename
where (Oct < 0 and Nov < 0) or
(Nov < 0 and Dec < 0) or
(Dec < 0 and Jan < 0) or
(Jan < 0 and Feb < 0) or
...
从tablename中选择*
其中(十月<0,十一月<0)或
(11月<0日和12月<0日)或
(12月<0日和1月<0日)或
(一月<0,二月<0)或
...
我还需要另一个标准。如果上一年的9月与10月相等,也算是连续两个月。我省略了一个名为account的列,它与FiscalYear一起使行唯一。