Сортировка MySQL в человеке

0

здесь код:

$sql_namesResult = mysql_query("SELECT name  FROM `scrimaprovedlist` ORDER BY `scrimaprovedlist`.`eorank`");

eo rank - ЧИСЛОЕ значение для ранга (общий, полковник, ect).

Проблема заключается в том, что когда я устанавливаю себя для 1, я верх, но наступает ранг 10, а не ранг 2. Как отредактировать это, чтобы показать его в порядке:

1
2
3
10
20
30

В настоящее время я использую "rank" вместо "eorank", потому что это проще. но проблема в том, что я должен вручную редактировать ряды снова и снова, чтобы они отображались в правильном порядке. Любые идеи?

Загляните в http://www.thexcrew.com/modules.php?name=Roster

  • 4
    Эти поля целые или строки? Они должны быть целыми.
  • 1
    @ Silky, опубликуйте это как ответ.
Теги:
sorting

2 ответа

5
ORDER BY CAST(scrimaprovedlist.eorank AS INTEGER)

Ваши ряды являются строками вместо целых чисел, поэтому они будут отсортированы как строка, если вы не произнесете или не преобразуете их в целые числа, которые я сделал выше

  • 3
    Я бы предложил обновить базовую таблицу, чтобы они стали типа INTEGER, предполагая, что поле содержит только цифры.
0

выяснил способ, я изменил свое числовое значение на алфавитное значение. используя только 17 рангов, я могу заменить # на буквы. спасибо за помощь в любом случае:)

  • 3
    Ты делаешь это глупо. Все, что работает, я думаю,

Ещё вопросы

Сообщество Overcoder
Наверх
Меню