![]() |
|
Модераторы: skyboy |
![]()
|
|
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: нет Всего: 207 |
есть таблица, один из столбцов содержит IP адрес (обычный INTEGER, но порядок байт - сетевой)
нужно получить все записи таблицы, просортированные по IP, но с т. з. символьного представления IP т. е. 1.10.256.7 1.11.0.1 2.0.0.0 2.0.1.0 2.0.2.255 и т. д. -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| rthsobakas |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 562 Регистрация: 20.9.2007 Репутация: нет Всего: -1 |
если бы просто тип integer то можно так
select * from TABLE order by IP DESC или так по возрастанию и убыванию select * from TABLE order by IP ASC
Что такое байт сетевой? FFFFFFFF типо из integer вычлиняете байты? |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
Ну конвертируй свои сетевые байты в "т.н. символьное представление" с ведущими нулями и сортирь по нему.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: нет Всего: 207 |
мне нужно получить не строки (к тому же сортировка строк будет работать очень медленно для большой таблицы) а данные из таблицы как есть, но в порядке убывания/возрастания IP
-------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
Значит, преобразуй "сетевые" байты в нормальные.
Ты вообще о чём? у тебя нет НИКАКИХ шансов пройти мимо filesearch без изменения структуры таблицы! так что забудь про мелочи. Добавлено через 1 минуту и 10 секунд Да получай! хоть два раза! я говорю по чём сортировать... не надо - ну не выводи выражение сортировки в конечный набор. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
в смысле, inet_ntoa будет работать нормально? может, сразу два поля держать - одно для сортировки и одно для выдачи? записывая одно, править триггером другое? |
|||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 4 Всего: 44 |
||||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
Умеет, умеет... но это filesearch. Я уже об этом говорил... -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 4 Всего: 44 |
||||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
||||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 4 Всего: 44 |
||||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
В MS SQL нет. Но можно создать индекс по вычисляемому полю (с некоторыми ограничениями, конечно).
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 4 Всего: 44 |
||||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 4 Всего: 44 |
извиняюсь за уход в оффтоп но не спросить не могу.
Akina, я правильно понимаю (делаю вывод из примеров в документации) что в mssql вычислимое поле на основе собственной функции сделать нельзя? на индекс по функции тоже есть ограничение - функция должна возвращать простые типы и при одних и тех же значениях параметров, в любой момент времени, должна возвращать одинаковое значение. |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
Признаться, не пробовал... MSDN молчит как партизан. Но с учётом того что UDF не может быть permanent-deterministic - думаю, что нельзя.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
это называется "детерминизмом". и, кстати, в mysql при определении функции можно указатьб deterministic она или нет. полезно для оптимизатора, видимо. |
|||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 4 Всего: 44 |
да, спасибо, коротко и ясно
в оракле данную прагму необходимо указывать для функций на основе которых делается индекс - выглядет это со стороны разработчика примерно так - "мамой клянусь что детерминированная" скорей всего так и есть. Akina, skyboy, спасибо за ответы. MAKCim, прошу прощенье за то что влез со своими "избалованными" вариантами. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |