例如,我创建的当前表,我创建了拉取列并根据另一个表重命名它们,目前看起来像这样:
ID1 | ID2 | Date_1 | Date_2 | ExternalJob 5 | JobIssue 1...|JobIssue30|
我想达到只有一个JobIssue列,其中JobIssues 1-30垂直而不是水平,基本上是扁平数据。
我尝试过的方法是pivot和join,但到目前为止没有运气,因为我必须将它们分组为多个特定的ID1,ID2,Date_1,Date_2和ExternalJob 5.
所以有很多细节,有些工作只能有1个问题代码,但最多可达30个。
在一天结束时,我希望有一张类似的表:
ID1 | ID2 | Date_1 | Date_2 | ExternalJob 5 | JobIssue
ID1 | ID2 | Date_1 | Date_2 | ExternalJob 5 | JobIssue
ID1 | ID2 | Date_1 | Date_2 | ExternalJob 5 | JobIssue
ID3 | ID5 | Date_23 | Date_45 | ExternalJob 7 | JobIssue
ID1 | ID2 | Date_10 | Date_20 | ExternalJob 2 | JobIssue
ID1 | ID4 | Date_1 | Date_2 | ExternalJob 9 | JobIssue
ID3 | ID4 | Date_17 | Date_6 | ExternalJob 5 | JobIssue
使用JobIssue提取其唯一标识符
JobIssues都是一个最终从.txt文件分隔的字符串。
答案 0 :(得分:1)
@Joyce L
您需要做的是UNPIVOT
Pivot / Unpivot文档:https://technet.microsoft.com/en-us/library/ms177410%28v=sql.105%29.aspx?f=255&MSPPError=-2147217396
PIVOT是你想要将行放入列中的时候,尽管你正试图做相反的事情,这就是所谓的UNPIVOT。
尝试一下,让我们知道它是怎么回事。