mysql有一个未记录的语法来对空值进行最后排序。在列名前放置减号(-),并将ASC切换到DESC:
SELECT * FROM tablename WHERE visible=1 ORDER BY -position DESC, id DESC
它本质上是 position DESC 将空值放在最后,否则与 position ASC .
position DESC
position ASC
这里有一个很好的推荐信 http://troels.arvin.dk/db/rdbms#select-order_by