Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我刚刚看到了以下语法:select * from table order by column = "b" desc 我猜值“b”的行将首先出现,但我不确定。在这种情况下,查询是什么意思以及排序是如何工作的。
select * from table order by column = "b" desc
我在谷歌上搜索过它,但......没有成功。
在 SQL 中,您不受对现有列的值排序的限制:您可以在order by子句中指定复杂的表达式。此查询按布尔表达式的值排序:该表达式对于 where 的行column = 'b'和false所有其他行都为真。结果,column = 'b' 的行将排在最前面,因为该order by子句指定了降序,并且在 SQLtrue中表示为 1,而false为 0。
order by
column = 'b'
false
true