我的 MySQL 表設定了一個自動遞增的主鍵。每當我
SELECT * FROM [MYTABLE]
主鍵值最高的記錄不顯示在最后。是否有一個原因?我能
SELECT * FROM [MYTABLE] ORDER BY [MYTABLE].ID ASC
最高的顯示在最后。抱歉,我不能隨意分享資料庫中的任何內容。也許有某種底層資料欄位(如記錄號)未包含在用于排序的表中。這是 Windows 服務器上的 MySQL 5.7.19。在我看來,按主鍵排序比按主鍵排序更有意義。MySQL 版本 5.7.19
uj5u.com熱心網友回復:
表將被視為多重集;表的行之間沒有固有的順序概念。如果您沒有在ORDER BY子句中指定任何表示順序,Mysql 可以自由地以任何順序回傳行。
uj5u.com熱心網友回復:
你想要的不適用。嗯,當然,無論資料如何存盤,MySquile 本質上都會獲取資料。每次更改索引表進行排序,列出表中的主鍵,或者每次呼叫排序。按順序選擇
SELECT * FROM [MYTABLE] ORDER BY [MYTABLE].ID ASC
請記住,一旦開始插入和洗掉資料,您就永遠無法保證自動遞增列的順序,因此除了在查詢中使用 ORDER BY 指定的順序外,您不應依賴任何順序。這是您正在執行的一項昂貴的操作,因為它需要完全重新創建索引,所以我不建議經常這樣做。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/396732.html
下一篇:MySQL存盤坐標的不同方法
