अगर जिनके माता-पिता नहीं हैं, उनके पास null है उनके parent . में कॉलम, आपका कथन बहुत सरल होगा:
SELECT id, name, parent FROM categories order by coalesce(parent, id), id;
अगर आप 0 . पर जोर देते हैं बिना माता-पिता का प्रतिनिधित्व करते हुए, आप अधिक वर्बोज़ का उपयोग कर सकते हैं CASE WHEN ... THEN ... बयान।
संपादित करें:
-- Sorting by name instead
select a.id, a.name, a.parent
from categories a left join categories b on a.parent=b.id
order by coalesce(b.name, a.name), a.name