Champion пишет:order by (`on` = '1' AND `launched` = '1') desc, (`on` != '1' AND `launched` != '1') desc.
Убрал order by и добился этим нужного порядка вывода и не озадачился - это прям не знаю. Прям мировоззрение мне перевернул.
Без order by порядок вывода будет меняться при одинаковых данных в зависимости от того, на какой платформе запускается запрос, от того, в каком порядке вставлялись данные и даже от текущей нагрузки на систему.
(Добавление)
или order by (`on` xor `launched`) asc
Ахах, я конечно дописал ORDER BY с условием вывода - DESC. Чтобы строки выводились по первому условию в первых страницах. Спасибо за помощь.