1

私は出荷を含むテーブル (SQL Server 2008) を持っているので、「ステージ 0」は「新しい出荷」を意味し、連続したステージは出荷追跡の異なる段階です。

次のテーブルをピボットしようとしています。

CREATE TABLE TableName
    ([ID] int, [IDShip] int, [Date] datetime, [Stage] int, [Arg] int)
;

INSERT INTO TableName
    ([ID], [IDShip], [Date], [Stage], [Arg])
VALUES
    (1, 1, '2013-10-03 08:36:00', 0, Null),
    (2, 1, '2013-10-03 08:37:25', 1, 1),
    (3, 2, '2013-10-03 08:38:25', 0, Null),
    (4, 1, '2013-10-03 08:39:25', 2, 1),
    (5, 2, '2013-10-03 08:40:25', 1, 3)
;

("Arg" は Stage0 の ID です。Select * は :)

ID IDShip Date                Stage   Arg
1  1      2013-10-03 08:36:00     0  Null
2  1      2013-10-03 08:37:25     1     1
3  2      2013-10-03 08:38:25     0  Null
4  1      2013-10-03 08:39:25     2     1
5  2      2013-10-03 08:40:25     1     3

次のようなものに:

ID0 IDShip DateShipment         ID1 DateFirstStage      ID2 DateSecondStage
1   1      2013-10-03 08:36:00  2   2013-10-03 08:37:25 4   2013-10-03 08:39:25    
3   2      2013-10-03 08:38:25  5   2013-10-03 08:40:25 

何か助けはありますか?ありがとう

4

2 に答える 2