在sql中不指定Order by排序是按照主鍵嗎

2022-09-24 14:00:21 字數 477 閱讀 6390

在sql中不指定order by,排序是按照主鍵嗎?答案是不一定。舉個例子www.cppcns.com:

查詢attendanceemprank表,主鍵是attendanceemployeerankid,而且是聚集索引

執行下面的語句,發現第一句不指定order by的結果跟第二句不一樣。

再看看執行計畫程式設計客棧,我們可以知道,第一程式設計客棧句用到的是date索引,而第二句用的是主鍵索引.

再看看另一組sql和查詢結果:

執行計畫中用到的索引也是不同的:

所以得出結論:在不指定or程式設計客棧der by的情況下,sqlserver會根據執行計畫實際查詢方式來得到資料,而執行計畫會根據sql中很多的因素(的查詢列,where條件,order by等)而使用不同的索引,最終出來的結果很可能是不同的。

本文標題: 在sql中不指定order by排序是按照主鍵嗎

本文位址: /shujuku/mssql/111272.html

SQL中利用ORDER BY排序結果

剛開時學習sql server的你不知道有沒有這樣的乙個困擾,如下mytable表,id欄位作為乙個排序列,排序為何如此的不整齊,怎樣讓它查詢時按我想要的順序排列呢,這就要用到sql中的ordr by 子句了。order by子句位於select語句的末尾它允許指定乙個列或多個列,這些列確定查詢結果...

SQL游標中Order By的使用限制

在建立游標的select語句中使用了order by子句,與非游標中select語句中的order by子句不同,只有在查詢的select子句中出現的列才可以作為order by子句中出現的列。例子 declare book cusor cursor forselect bookid,booknam...

TrueSTUDIO中在flash指定位置儲存常量

在truestudio開發軟體中如何實現在flash指定位置儲存常量,使用官方文件 user guide.pdf 修改多次不能實現。通過閱讀 ld.pdf 以及網上該文件的翻譯版本,歷時2天,實現方法總結如下。步驟1 stm32l071rb flash.ld specify the memory a...