0
我有一個db2查詢,它必須獲取列(Col6)的第一個值。我曾嘗試使用列的最小值,但它以升序獲取第一個值。DB2查詢以獲取組中的第一個值
表如下:
Col1 Col2 Col3 Col4 Col5 Col6
10 -1 N/A 1 41 Pack Inv
10 -1 N/A 1 10 Fl Sales
10 -1 N/A 1 10 St Ss Bu
10 -1 N/A 1 41 Pack Inv
爲COL7預期的輸出如下所示:
Col1 Col2 Col3 Col4 Col5 Col6 Col7
10 -1 N/A 1 41 Pack Inv Pack Inv
10 -1 N/A 1 10 Fl Sales Pack Inv
10 -1 N/A 1 10 St Ss Bu Pack Inv
10 -1 N/A 1 41 Pack Inv Pack Inv
通過使用MIN(COL6)OVER(PARTITION BY Col1中)AS 「COL7」,生成的輸出是:
Col1 Col2 Col3 Col4 Col5 Col6 Col7
10 -1 N/A 1 41 Pack Inv Fl Sales
10 -1 N/A 1 10 Fl Sales Fl Sales
10 -1 N/A 1 10 St Ss Bu Fl Sales
10 -1 N/A 1 41 Pack Inv Fl Sales
我可以知道如何在db2中實現預期輸出。
謝謝
「First」根據什麼順序?哪一列確定特定Col1值在一組行中的所需順序?如果您沒有指定順序,那麼DB2將不保證返回的行的順序。 – WarrenT