私はSQLクエリを持っています:
SELECT
TAT,
SUM(CASE WHEN [Month Entered] = 1 THEN 1 ELSE 0 END) JAN,
SUM(CASE WHEN [Month Entered] = 2 THEN 1 ELSE 0 END) FEB,
SUM(CASE WHEN [Month Entered] = 3 THEN 1 ELSE 0 END) MAR,
SUM(CASE WHEN [Month Entered] = 4 THEN 1 ELSE 0 END) APR,
SUM(CASE WHEN [Month Entered] = 5 THEN 1 ELSE 0 END) MAY,
SUM(CASE WHEN [Month Entered] = 6 THEN 1 ELSE 0 END) JUN,
SUM(CASE WHEN [Month Entered] = 7 THEN 1 ELSE 0 END) JUL,
SUM(CASE WHEN [Month Entered] = 8 THEN 1 ELSE 0 END) AUG,
SUM(CASE WHEN [Month Entered] = 9 THEN 1 ELSE 0 END) SEP,
SUM(CASE WHEN [Month Entered] = 10 THEN 1 ELSE 0 END) OCT,
SUM(CASE WHEN [Month Entered] = 11 THEN 1 ELSE 0 END) NOV,
SUM(CASE WHEN [Month Entered] = 12 THEN 1 ELSE 0 END) [DEC]
FROM
[SalesDWH].[dbo].[TurnAround]
where DATEPART(yyyy,[datetime entered])=2010
GROUP BY TAT
ORDER BY 1;
返されるものは次のとおりです。
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
| TAT | JAN | FEB | MAR | APR | MAY | JUN | JUL | AUG | SEP | OCT | NOV | DEC |
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
| 0 | 0 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 7 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 18 | 28 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 19 | 39 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 53 | 0 | 0 |
| 20 | 106 | 0 | 0 | 0 | 0 | 0 | 2 | 17 | 0 | 1 | 2 | 0 |
| 21 | 113 | 12 | 0 | 0 | 0 | 22 | 1 | 81 | 137 | 27 | 1 | 110 |
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
出力を次のようにしたい:
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
| TAT | JAN | FEB | MAR | APR | MAY | JUN | JUL | AUG | SEP | OCT | NOV | DEC |
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
| 0 | | | | 3 | | | | | | | | |
| 1 | 1 | | | | | | | | | | | |
| 2 | | | | | | | | | | | | |
| 3 | | | | | | | | | | | | |
| 4 | | | | | | | | | | | | |
| 5 | | | | | | | | | | | | |
| 6 | | | | | | | | | | | | |
| 7 | | | | | 1 | | | | | | | |
| 8 | | | | | | | | | | | | |
| 9 | | | | | | | | | | | | |
| 10 | | | | | | | | | | | | |
| 11 | | | | | | | | | | | | |
| 12 | | | | | | | | | | | | |
| 13 | | | | | | | | | | | | |
| 14 | | | | | | | | | | | | |
| 15 | | | | | | | | | | | | |
| 16 | | | | | | | | | | | | |
| 17 | | | | | | | | | | | | |
| 18 | 28 | | | | | | | | | | | |
| 19 | 39 | | | | | 1 | | | | 53 | | |
| 20 | 106 | | | | | | 2 | 17 | | 1 | 2 | |
| 21 | 113 | 12 | | | | 22 | 1 | 81 | 137 | 27 | 1 | 110 |
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
0
すべての が削除され、TAT
列が 0,1,2,3,4,...... と連続していることに注意してください。
これら2つの条件を強制するにはどうすればよいですか?
0 から 191 までの TAT の値にこれが必要です。
値が 192 以上の場合、192 での TAT を 192 以上のすべての値の合計にしたい