排序算法分穩定排序和非穩定排序。通常非穩定排序的時間複雜度更低。
而在oracle中查詢也要注意排序的結果集可能不是目標的結果集。
1, 未指定排序規則
select * from t order by something
此時會使用默認的增長的排序(ASCENDING)
2, 排序列不是唯一鍵或者排序列組合起來存在重複
此時查詢10條和查詢11條得到的前10條的數據可能不一致。
3, 未指定排序列
select * from t
很常見的寫法,此時的數據沒有任何排序(在Ask Tom中Tom回答Unless and until you add "order by" to a query, you cannot say ANYTHING about the order of the rows returned. 原文地址),因此在分頁查詢中,第一頁中的數據有可能出現在第三頁。