Не видя образца ваших исходных данных, сложно отследить ошибку, которая вас беспокоит.Следующий пример демонстрирует сортировку по двум столбцам:
select x.*
from (values ('Leo', 6), ('Mickey', 5), ('Don', 7), ('Raf', 6)) x(name, score)
order by 2,1
Возвращает
name score
Mickey 5
Leo 6
Raf 6
Don 7
И вы можете заметить, что из-за полей сортировки порядок «Дон» находится внизу списка снаименьшее количество баллов, хотя в алфавитном порядке он должен быть на вершине, а «Лео» и «Раф», имеющие одинаковое количество баллов, отсортированы в алфавитном порядке.