Попытка заказа по двум столбцам в следующем запросе.Я хочу найти ближайших людей, а затем упорядочить по наивысшему рейтингу.
Однако, когда я запускаю этот запрос, он возвращает только ближайших людей и не применяет второй порядок
SELECT person.fullname, person.ranking_score ranking, ST_Distance(person.location, CAST(ST_SetSRID(ST_MakePoint(-0.1642618, 51.58763), 4326) AS geography(GEOMETRY,-1))) AS distance
FROM person
ORDER BY distance ASC, ranking DESC;
возвращает
fullname | ranking | distance
----------+------+------------+-------
User 1 | 2.62 | 1281.06710415
User 2 | 5.218 | 1610.4042403
User 3 | 3.72 | 3005.28625016
User 4 | 2.82 | 3005.28625016
User 5 | 6.826 | 3186.54245429
Как видите, правильный порядок применяется к расстоянию, но не к ранжированию.
РЕДАКТИРОВАТЬ:
Я ожидал, что первоначальный порядокрасстояния будет применяться, а затем следующий порядок будет применяться к этому набору результатов?
fullname | ranking | distance
----------+------+------------+-------
User 5 | 6.826 | 3186.54245429
User 2 | 5.218 | 1610.4042403
User 3 | 3.72 | 3005.28625016
User 4 | 2.82 | 3005.28625016
User 1 | 2.62 | 1281.06710415