Задать вопрос

Неправильно работает выборка из MySQL с сортировкой по числу, как исправить?

Здравствуйте. Не могу понять в чем проблема, делаю выборку из БД следующим запросом:
SELECT xuid,progressPercentage FROM `xbox_cache_games` WHERE titleID='175227487' AND progressPercentage > 0 GROUP BY xuid ORDER BY progressPercentage DESC LIMIT 1

И вместо сортировки по убыванию 100 > 75 > 3 и т.д. получаю следующее (для теста убрал LIMIT 1):
5e37d04d07e78925338088.jpeg
При этом если в результатах не появляется значения progressPercentage равного 100, то вывод корректный:
5e37d0cb7075e844824737.jpeg
  • Вопрос задан
  • 325 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
100 > 75 > 3
'75' > '3' > '100'
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@Arik
Видать сортировка идет по строке, как ей еще сортироваться? Попробуйте к целому числу прийти, если не правкой схемы (а желательно так!), то как минимум при запросе:
... ORDER BY progressPercentage + 0 DESC
Ответ написан
Комментировать
Mo45
@Mo45 Автор вопроса
Спасибо. Проблема была в типе данных. Сменил varchar на int.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы