我有一個表(time_period)從兩個連續行檢索組合的查詢
該表列出了幾個時間段,如下所示。
unique_id type_id sequence_number billing_id ...
13 LJK1 1 4356
14 CNS3 2 4356
15 LJK1 3 4356
16 AOX4 4 4356
17 CNS3 1 9827
18 POD2 2 9827
它變得棘手。我需要根據遞增的序列號將所有type_id對從一個句點返回到下一個句點。例如,對於BILLING_ID =「4356」,我需要檢索這個結果集
-----------------------------------
LJK1 | CNS3 -- type_ids pair from seq 1 to seq 2
CNS3 | LJK1 -- type_ids pair from seq 2 to seq 3
LJK1 | AOX4 -- type_ids pair from seq 3 to seq 4
sequence_numbers的每順序計數是可變的(高達10,低至2)。我會爲X數量的訂單做這件事。由此,我會做進一步處理,但讓這些配對本身令我感到困惑。我不需要結果集中的order_id或序列號。
這裏是否需要遞歸CTE?也許遊標?或者也許使用樞軸?我剛剛進行了頭腦風暴和研究,但我對其中的任何一方都沒有太多經驗,可以使用某些方向。
使用SQL Server 2008
爲什麼你需要對在SQL響應,而不是列出升序排列的typeid的,並在顯示器編程配對呢? – roberttdev 2011-03-30 14:21:20
@roberttdev:好主意 – RollingBoy 2011-03-30 14:23:27
是sequence_numbers ... sequential? – LesterDove 2011-03-30 14:27:42