【发布时间】:2015-07-21 11:58:07
【问题描述】:
我有这个透视表
+---------+----------+----------+-----+----------+
| Date | Product1 | Product2 | ... | ProductN |
+---------+----------+----------+-----+----------+
| 7/1/15 | 5 | 2 | ... | 7 |
| 8/1/15 | 7 | 1 | ... | 9 |
| 9/1/15 | NULL | 7 | ... | NULL |
| 10/1/15 | 8 | NULL | ... | NULL |
| 11/1/15 | NULL | NULL | ... | NULL |
+---------+----------+----------+-----+----------+
我想用上面的值填写NULL 列。所以,输出应该是这样的。
+---------+----------+----------+-----+----------+
| Date | Product1 | Product2 | ... | ProductN |
+---------+----------+----------+-----+----------+
| 7/1/15 | 5 | 2 | ... | 7 |
| 8/1/15 | 7 | 1 | ... | 9 |
| 9/1/15 | 7 | 7 | ... | 9 |
| 10/1/15 | 8 | 7 | ... | 9 |
| 11/1/15 | 8 | 7 | ... | 9 |
+---------+----------+----------+-----+----------+
我发现这个article 可能对我有帮助,但这只是操纵一列。我如何将此应用于我的所有列,或者由于我的列是动态的,我如何才能获得这样的结果。
任何帮助将不胜感激。谢谢!
【问题讨论】:
-
我的猜测是在旋转之前执行此操作会容易得多。
-
是的。但我找不到任何方法来确定
NULL列是什么 -
这是原始数据中不存在的行(假设您实际上没有NULL值)
-
可以确定哪些行不存在?一个例子将是一个很好的参考。
-
这取决于您的数据,但例如stackoverflow.com/questions/25038494/… 有一些想法。您还可以考虑创建一个日历表(每天 1 行),它通常有助于与日历相关的查询
标签: sql sql-server tsql null