在Mysql中,當您執行選擇SQL語句時,如果不包含排序子句,會有默認排序,如何反轉默認排序?只需添加DESC
?如何顛倒Mysql中的默認排序?
回答
如果您沒有指定ORDER BY子句,那麼沒有保證的順序,因此'默認順序的逆向'是未定義的。
對於那些喜歡用證據來回答所提出的索賠的答案:https://stackoverflow.com/questions/8746519/sql-what-is-the-default-order-by-of-queries – Patrick 2017-06-26 00:47:23
我認爲你可以通過指定實際需要的順序來更好地服務。表格本身就沒有順序。它可能只是按插入行的順序顯示 - 儘管不能保證它會保持這個順序。
有機會,你可能只是想補充一點:
ORDER BY id DESC
...因爲大部分的時間,如果你想在人用所謂的「身份證」
的自動遞增的字段數據一直排列出來,您必須使用ORDER BY
,然後再使用您要排序查詢的列。 ASC
是默認值,所以您不需要指定它。 IE:
ORDER BY your_column
...是等效於:
ORDER BY your_column ASC
ASC/DESC是在每列的基礎。例如:
ORDER BY first_column, second_column DESC
...意味着查詢將按降序按升序使用first_column
,second_column
排序結果集,作爲一個組合。
我需要的順序是插入行的相反順序。 「先插入,先出」。 – Steven 2009-11-27 06:42:22
@Steven:在我建議使用什麼之前,您必須從數據庫中提供'DESCRIBE [您的表名稱]的輸出。如果您有一個自動編號主鍵列 - 按順序「ASC」。接下來最好的事情是使用datetime數據類型的date_created列。再次,'ASC'。 – 2009-11-27 06:51:15
除非您可以在ORDER BY
子句中指定列名稱,否則不能使用DESC
,並且您必須訴諸涉及LIMIT
的技巧來查看最後幾條記錄。
我覺得這樣做會讓人不滿意。
您可以在結果字段設置一個計數器和排序使用它:
SELECT *, @counter := @counter + 1 AS 'counter' FROM tableName, (SELECT @counter := 0) r ORDER BY counter DESC
我認爲它會工作,只要你想。
- 1. 顛倒默認Java LinkedList
- 2. 顛倒排序的順序
- 3. 如何顛倒MySQL結果
- 4. 在Angular中顛倒排序順序
- 5. 如何顛倒ng表中列的排序順序(先升序)?
- 6. 顛倒字符串中字的排序
- 7. 顛倒使用DataTables排序的順序
- 8. 如何顛倒ggplot2的默認調色板
- 9. 在Python 3中顛倒排序字典
- 10. MySQL顯示顛倒順序的結果?
- 11. 如何在* ngFor中顛倒順序?
- 12. 以小寫顛倒順序排列QuerySet
- 13. Mysql子查詢顛倒順序
- 14. 如何顛倒行的順序
- 15. Bootstrap 4,如何顛倒列的順序?
- 16. 如何顛倒CGPath的點順序
- 17. 如何顛倒矢量的順序?
- 18. 如何顛倒simplexmlelement列表的順序?
- 19. Zend_Paginator顛倒順序
- 20. 是否可以顛倒上下文菜單項或顛倒排序
- 21. 默認排序
- 22. 顛倒樹結構(MySQL)
- 23. 顛倒MySQL結果php
- 24. 顛倒列表的順序
- 25. ArrayList的顛倒順序
- 26. 顛倒對的順序
- 27. 使用行排序的SQL子查詢的顛倒順序
- 28. 不能顛倒java中的數組排序
- 29. 如何顛倒Jung DirectedGraph?
- 30. 如何顛倒numpy中的子數組?
Duplicate:http://stackoverflow.com/questions/1793147/sql-best-practice-to-deal-with-default-sort-order/1793162#1793162 – 2009-11-27 06:34:21
有沒有這樣的事情作爲「默認排序」所以你不能「反轉」它。 – 2014-03-17 17:32:05