2

我刚刚看到了以下语法:select * from table order by column = "b" desc 我猜值“b”的行将首先出现,但我不确定。在这种情况下,查询是什么意思以及排序是如何工作的。

我在谷歌上搜索过它,但......没有成功。

4

1 回答 1

3

在 SQL 中,您不受对现有列的值排序的限制:您可以在order by子句中指定复杂的表达式。此查询按布尔表达式的值排序:该表达式对于 where 的行column = 'b'false所有其他行都为真。结果,column = 'b' 的行将排在最前面,因为该order by子句指定了降序,并且在 SQLtrue中表示为 1,而false为 0。

于 2012-12-20T20:05:06.153 回答