如何反转Mysql中的默认排序?

Ste*_*ven 7 mysql sql sorting sql-order-by

在Mysql中,当你执行一个select SQL语句时,如果你不包含一个排序子句,有一个默认排序,如何反转默认排序?刚添加DESC

OMG*_*ies 5

如果您希望数据一致排序,则必须使用ORDER BY后面要排序查询的列. ASC是默认值,因此您无需指定它.IE:

ORDER BY your_column
Run Code Online (Sandbox Code Playgroud)

......相当于:

ORDER BY your_column ASC
Run Code Online (Sandbox Code Playgroud)

ASC/DESC基于每列.例如:

ORDER BY first_column, second_column DESC
Run Code Online (Sandbox Code Playgroud)

...表示查询将使用first_column升序按second_column降序将结果集排序为组合.


Moh*_*eri 5

您可以在结果字段中设置一个计数器并使用它进行排序:

SELECT *, @counter := @counter + 1 AS 'counter' FROM tableName, (SELECT @counter := 0) r ORDER BY counter DESC
Run Code Online (Sandbox Code Playgroud)

我认为它会像你想要的那样工作。


Amb*_*ber 3

如果不指定 ORDER BY 子句,则不保证顺序,因此“默认顺序的反向”未定义。