我在tsql中开发了一个类似于以下内容的数据透视表:
MaturityBand AAA AA+ AA AA- A+ A A- Grand_Total
Less than 1 yr NULL NULL NULL NULL NULL NULL 7.92 7.92
1 to 5 yrs NULL NULL 0.44 NULL NULL 1.95 8.96 11.35
5 to 10 yrs NULL NULL 1.33 NULL NULL 4.11 4.04 9.98
10 to 20 yrs NULL NULL 1.14 NULL NULL 0.74 1.07 2.95
>20 years NULL NULL 0.15 NULL NULL NULL 0.14 0.29
Total NULL NULL 3.06 NULL NULL 6.8 22.13 31.99
我想要做的是删除空列,以便上面的内容变为:
MaturityBand AA A A- Grand_Total
Less than 1 yr NULL NULL 7.92 7.92
1 to 5 yrs 0.44 1.95 8.96 11.35
5 to 10 yrs 1.33 4.11 4.04 9.98
10 to 20 yrs 1.14 0.74 1.07 2.95
>20 years 0.15 NULL 0.14 0.29
Total 3.06 6.8 22.13 31.99
这可能吗?
(如有必要,我可以发布我的代码。)
答案 0 :(得分:1)
不,WHERE
或HAVING
子句中的过滤器适用于行,而不适用于列。如果您不想要特定列,则只能从SELECT
子句中手动排除它。
SELECT
MaturityBand, AA, A, [A-], Grand_Total
FROM
(
/*put your pivot query here*/
)some_alias
以下是我今天为动态支点撰写的答案(如评论中建议的aF。)。
请尝试一下,让我知道结果。实际上,如果有效,我会感到惊讶。