主鍵房源通常做查詢:MySQL的 - 在錯誤的順序
select * from table
應該通過上市以升序主鍵排序,但事實並非如此。 我認爲這是我的主鍵問題,但已使用這些命令進行修復,但不起作用。
主鍵房源通常做查詢:MySQL的 - 在錯誤的順序
select * from table
應該通過上市以升序主鍵排序,但事實並非如此。 我認爲這是我的主鍵問題,但已使用這些命令進行修復,但不起作用。
在SQL中,order
不是一組數據的預定義或固有屬性。
然後,不保證您的數據以預定義的順序返回。這也包括主鍵順序 如果您想要正確的順序,您必須使用ORDER BY
子句明確說明。
MySQL絕對不能保證數據以什麼順序顯示給您,除非您提供ORDER BY
聲明。
例如...
SELECT *
FROM foo
ORDER BY id ASC;
這是爲了保證您的數據傷愈復出的ID進行排序的唯一途徑。否則(取決於你用於表格的引擎),它可以以任意順序返回。也許,例如,數據按行插入的順序返回,其中可能不會從ID值相對於彼此顯而易見。
你可以舉一個你的數據和查詢產生這種行爲的例子嗎? – nasukkin
「沒有工作」在2016年獲得最佳問題解答獎,這完全清楚出了什麼問題以及如何,我只是想知道爲什麼沒有人用解決方案轟炸你。 –