MySQL har en odokumenterad syntax för att sortera nollor sist. Placera ett minustecken (-) före kolumnnamnet och växla ASC till DESC:
SELECT * FROM tablename WHERE visible=1 ORDER BY -position DESC, id DESC
Det är i huvudsak inversen av position DESC placera NULL-värdena sist men annars samma som position ASC .
En bra referens finns här https://troels.arvin.dk/db/rdbms# select-order_by