MySQL memiliki sintaks yang tidak terdokumentasi untuk mengurutkan nol terakhir. Letakkan tanda minus (-) sebelum nama kolom dan alihkan ASC ke DESC:
SELECT * FROM tablename WHERE visible=1 ORDER BY -position DESC, id DESC
Ini pada dasarnya adalah kebalikan dari position DESC
menempatkan nilai NULL terakhir tetapi sebaliknya sama dengan position ASC
.
Referensi yang bagus ada di sini http://troels.arvin.dk/db/rdbms# pilih-pesan_oleh