Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: проблема с сортировкой!!
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » проблема с сортировкой!!

Страниц (1): [1]
 

1. once - 08 Октября, 2009 - 18:35:38 - перейти к сообщению
mysql;
есть таблица, один из столбцов содержит IP адрес (обычный INTEGER, но порядок байт - сетевой)
нужно получить все записи таблицы, просортированные по IP, но с т. з. символьного представления IP
т. е.
1.10.256.7
1.11.0.1
2.0.0.0
2.0.1.0
2.0.2.255
и т. д.
2. DeepVarvar - 08 Октября, 2009 - 19:32:34 - перейти к сообщению
3. EuGen - 09 Октября, 2009 - 02:33:45 - перейти к сообщению
SELECT * FROM `table` ORDER BY INET_NTOA(`int_ip`)
4. Ch_chov - 09 Октября, 2009 - 05:55:37 - перейти к сообщению
Цитата:
1.10.256.7
Разве бывают такие IP ?
5. once - 09 Октября, 2009 - 09:45:48 - перейти к сообщению
EuGen пишет:
SELECT * FROM `table` ORDER BY INET_NTOA(`int_ip`)


ето понятно, только айпи будут перевернутые, тоесть не в том порядке и сортировка по строкам
(Добавление)
Ch_chov пишет:
Цитата:
1.10.256.7
Разве бывают такие IP ?


ето для примера, что должны идти с меньшего к большему или наоборот(asc|desc)
6. Ch_chov - 09 Октября, 2009 - 10:14:05 - перейти к сообщению
Цитата:
ето для примера, что должны идти с меньшего к большему

Если поменять байты местами получится 7.256.10.1
Это что реальный IP?

Может стоит хранить IP в нормальном виде (строковом или int)?
И не будет никаких проблем с сортировкой.
7. amonsh - 13 Октября, 2009 - 10:08:19 - перейти к сообщению
сортируйте по auto_increment (кто как называет кто ИД кто кей) а айпишники действительно храните в текстовых полях.
8. Champion - 13 Октября, 2009 - 10:54:10 - перейти к сообщению
Храните как int и всё будет хорошо.amonsh что-то странное ты изложил.

 

Powered by ExBB FM 1.0 RC1