Я пишу запрос SQL, который соединяет таблицу школ с таблицей районов. Простая связь «один ко многим», при которой каждая школа относится к одному округу. Мой вопрос таков:
SELECT
schools.id AS schoolid,
schools.name AS school,
districts.id AS districtid,
districts.name AS district
FROM sms_schools AS schools
LEFT JOIN sms_districts AS districts ON schools.districtid = districts.id
WHERE 1 = 1
ORDER BY districts.name, schools.name
Причина, по которой я сделал левое соединение, заключается в том, что не каждая школа присоединена к округу. Например, одна школа может быть домашним обучением, в которой могут учиться все ученики, обучающиеся на дому. Это не было бы в районе.
Я бы хотел использовать ORDER BY для заказа по названию округа, а затем по названию школы. Единственная проблема в том, что я хочу, чтобы нулевой район находился внизу, чтобы я мог затем использовать группу под названием «Другое» в конце моего вывода.
Можно ли упорядочить по возрастанию с нулями в конце вывод?