0
以下查詢的結果對我來說很奇怪(我是DB2的新手)。它按照我在查詢中沒有提到的表格中的列對結果進行排序。DB2按查詢中未提及的coumn對結果進行排序
WITH RESULT AS (
SELECT T1.*, ROWNUMBER() OVER() AS RNUM
FROM TableNAmeT1
WHERE column1= 'xyz'
)
SELECT *
FROM RESULT
WHERE RNUM BETWEEN 1 AND 100
ORDER BY ORDER OF RESULT OPTIMIZE FOR 100 ROWS
它不排序,當我使用下面的查詢
WITH RESULT AS (
SELECT T1.*, ROWNUMBER() OVER() AS RNUM
FROM TableNAmeT1
WHERE column1= 'xyz'
)
SELECT *
FROM RESULT
ORDER BY ORDER OF RESULT
- 這是因爲該表或任何其他的指標,通常這些表是FIFO
**很明顯,這是由於「優化100行」子句和使用標量值(ROWNUMBER())進行過濾(在WHERE子句中)
**如果我進一步縮小我的問題的範圍,我想知道第一個查詢和第二個查詢的差異順序是什麼原因。
感謝所有
感謝彼得... 問題是結果不顯示,因爲它是在表, – user978103