Добрый день!
Ситуация такова. В MySQL в одном столбце хранятся номера домов. Когда делаю выборку с этой таблицы и указываю сортировку по номеру дома - сортируются они как 1, 11, 24, 3, 5.
Подскажите пожалуйста как сделать сортировку для вывода списка в виде 1, 3, 5, 11, 24?
Спасибо
1. Moulder - 22 Октября, 2012 - 14:39:41 - перейти к сообщению
2. Zuldek - 22 Октября, 2012 - 14:41:58 - перейти к сообщению
SELECT * FROM buildings ORDER BY number ASC;
3. Moulder - 22 Октября, 2012 - 14:56:15 - перейти к сообщению
[quote=Zuldek][/quote]
Так и делал. но мне надо чтобы цифры были номера домов были по порядку, а не цифры.
Т.е. дом 11 должен быть после дома 2, а не после 1
надо
1
2
3
5
11
24
получается
1
11
2
24
3
5
Так и делал. но мне надо чтобы цифры были номера домов были по порядку, а не цифры.
Т.е. дом 11 должен быть после дома 2, а не после 1
надо
1
2
3
5
11
24
получается
1
11
2
24
3
5
4. ingram - 22 Октября, 2012 - 15:19:40 - перейти к сообщению
Moulder пишет:
Так и делал. но мне надо чтобы цифры были номера домов были по порядку, а не цифры.
Т.е. дом 11 должен быть после дома 2, а не после 1
надо
1
2
3
5
11
24
получается
1
11
2
24
3
5
Zuldek пишет:
Так и делал. но мне надо чтобы цифры были номера домов были по порядку, а не цифры.
Т.е. дом 11 должен быть после дома 2, а не после 1
надо
1
2
3
5
11
24
получается
1
11
2
24
3
5
Столбец с номерами домов у тебя скорее всего имеет строковый тип. Отсюда и проблема.
попробуй так:
CODE (SQL):
скопировать код в буфер обмена
скопировать код в буфер обмена
- SELECT * FROM buildings ORDER BY cast(number AS UNSIGNED) ASC;