0
我有一個表,像下面的存儲數據:SQL Server 2008中:CASE WHEN自動遞增/組數據
MonthOpened | MONTH | Collected
--------------------------------
01/05/2012 | 1 | £10.00
01/05/2012 | 2 | £30.00
01/05/2012 | 3 | £30.00
01/05/2012 | 4 | £30.00
01/05/2012 | 5 | £30.00
01/05/2012 | 6 | £10.00
01/05/2012 | 7 | £30.00
01/05/2012 | 8 | £50.00
01/05/2012 | 9 | £10.00
01/05/2012 | 10 | £50.00
01/05/2012 | 11 | £100.00
01/05/2012 | 12 | £141.92
01/05/2012 | 13 | £100.00
01/05/2012 | 14 | £50.00
月開業的日期在那裏取出賬戶,每月爲他們支付的月(月1是帳戶開立的月份(5月),月份2月份爲6月份,月份3月份爲7月份等等。此時此過程一直持續到月份36.
僅供參考此數據進入SSRS矩陣並且看起來像這樣
MONTH |1 |2 | 3| 4| 5| 6| 7| 8| 9| 10| 11| 12| 13| 14
----------------------------------------------------------------------------------------------------------------
01/05/2012|£10.00|£30.00|£30.00|£30.00|£30.00|£10.00|£30.00|£50.00|£10.00|£50.00|£100.00|£141.92|£100.00|£50.00
我被要求在12個月後將它們組合在一起,因此1-12出現,然後18,24,30,36等等。我做一個通用的情況下,當
CASE
WHEN ISNULL(sp.Month, N'01') BETWEEN 01 AND 12
THEN ISNULL(sp.Month, N'01')
WHEN ISNULL(sp.Month, N'01') BETWEEN 13 AND 18
THEN 18
WHEN ISNULL(sp.Month, N'01') BETWEEN 19 AND 24
THEN 24
WHEN ISNULL(sp.Month, N'01') BETWEEN 25 AND 30
THEN 30
WHEN ISNULL(sp.Month, N'01') BETWEEN 31 AND 36
THEN 36
ELSE ''
END AS MONTH
但是我需要得到它,使它的汽車企業集團,這樣只有在賬戶未來幾個月(42,48,54,60這樣做是速戰速決。 ...),但我需要能夠在SSRS查詢窗口中執行此操作,並且無法找到使其工作的方法。
@ allan-s-hansen我需要能夠自己顯示前12個月,然後在12個月後每6個組合一次 – GPH 2015-03-25 08:06:17
如果間隔時間僅爲6個月,則可以使用6得到間隔數字。如果你想省略前12個(2個間隔),那就用一個案例來做。但是做這個分區,所以你可以通過編程來獲得間隔時間,這可以幫助你簡化查詢 – 2015-03-25 08:07:37