我有这个简单的表格:
Name
-----
test1
test2
test3
我需要建立这样的东西:
Name Year Month
---------------------
Test1 2016 1
Test1 2016 2
Test1 2016 3
Test1 2016 …
Test1 2016 12
Test2 2016 1
Test2 2016 2
Test2 2016 3
Test2 2016 …
Test2 2016 12
Test1 2017 1
Test1 2017 2
Test1 2017 3
Test1 2017 …
Test1 2017 12
Test2 2017 1
Test2 2017 2
Test2 2017 3
Test2 2017 …
Test2 2017 12
有人可以给我一个暗示吗?
提前致谢。
答案 0 :(得分:2)
如果您没有日历表,则另一个快速选项
Select *
From YourTable
Cross Join ( values (2016),(2017) ) Y(Year)
Cross Join ( values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12) ) M(Month)
答案 1 :(得分:0)
使用绝对无价的日历表。
这里是SentryOne的Aaron Bertrand的tutorial。
答案 2 :(得分:0)
选择* 来自mytable 交叉加入dateTable
这是一个艰难的一周,感谢大家的帮助。