目前,我在声明中正在执行一个非常基本的OrderBy。
SELECT * FROM tablename WHERE visible=1 ORDER BY position ASC, id DESC
问题是“位置”的NULL条目被视为0。因此,所有位置为NULL的条目都出现在具有1,2,3,4的条目之前。例如:
NULL, NULL, NULL, 1, 2, 3, 4
有没有一种方法可以实现以下排序:
1, 2, 3, 4, NULL, NULL, NULL.
8
您应该重新考虑user1052645的答案。它更简单,不需要最大值的知识,并且可能更快(假设评估表达式可能比函数调用更快)。
—
史蒂夫·克莱