【发布时间】:2011-08-12 02:25:34
【问题描述】:
我刚开始学习MySQL,正在看的书有以下例子:
SELECT last_name, first_name, birth FROM president
ORDER BY IF(birth IS NULL,0,1), birth DESC;
我想知道的是这些数字(0 和 1)如何影响 ORDER BY 的行为——当你给 ORDER BY 一个数字时,它有什么作用?
我发现的一个提示是随机排序是通过以下方式完成的:
SELECT * from TABLE ORDER BY rand();
但我仍然不知道它为什么有效。
【问题讨论】:
-
就个人而言,我更喜欢 ASCENDING 死亡而不是 DESCENDING 死亡。听说下面有点热口哨
-
按那个数字排序?我不明白你在哪里对此感到困惑。
-
JohnFX,文档(和书)说 ORDER BY 有两个参数,DESC 和 ASC。没有给出其他语法的解释(给定数字的 ORDER BY)。这就是我感到困惑的原因。
-
glowcoder,把它改成出生,这样听起来不那么病态。
标签: mysql sql-order-by