【发布时间】:2015-03-27 15:36:22
【问题描述】:
我的架构不好,需要取消透视某些字段并计算日期。 这是我所拥有的:
DATE1 DATE7 H1 H2 H3 H4 H5 H6 H7
2011-09-19 2011-09-25 3 5 2 7 8 0 0
2011-09-26 2011-10-02 8 6 4 2 1 0 0
2011-10-03 2011-10-09 7 9 5 3 6 0 0
H1 是星期一花费的小时数。 H2 代表星期二,以此类推。 H7 是星期日。
Date1 包含周一的完整日期,Date7 包含周日。这是个问题,因为我每行需要一个日期和一个小时。
这是我需要的:
DATE HOUR
2011-09-19 3
2011-09-20 5
2011-09-21 2
2011-09-22 7
2011-09-23 8
2011-09-24 0
2011-09-25 0
2011-09-26 8
2011-09-27 6
2011-09-28 4
2011-09-29 2
2011-09-30 1
....
使用 UNPIVOT,可以将 H1 逆向 H7,但我不知道如何解决 DATE 字段。
这是本案例的 SQLFiddle:http://sqlfiddle.com/#!3/4e012/2/0
提前感谢!
【问题讨论】:
标签: sql-server-2008 date calculated-columns unpivot