powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / NLS_SORT по числам
3 сообщений из 3, страница 1 из 1
NLS_SORT по числам
    #39848384
LVV5
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго дня!

Есть таблица, в нем поле NUMBER. Переменная NLS_SORT установлена в значение BINARY.

Запрос вида
Код: plsql
1.
select * from table order by col_num;



Сортирует по двоичному значению
Код: plsql
1.
2.
3.
4.
1
100
8
...


, а не по числу.

Явное преобразование к числу дает результат
Код: plsql
1.
2.
3.
4.
5.
select * from table order by to_number(col_num);
1
8
100
...



Если поле в таблице и так определено, как NUMBER, зачем нужно преобразование? И в чем тут подвох?
...
Рейтинг: 0 / 0
NLS_SORT по числам
    #39848404
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LVV5Если поле в таблице и так определено, как NUMBERТы заблуждаешься.
...
Рейтинг: 0 / 0
NLS_SORT по числам
    #39848411
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LVV5Сортирует по двоичному значению
Код: plsql
1.
2.
3.
4.
1
100
8
...


, а не по числу.Number и в "двоичном" представлении даст порядок:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
select t.column_value n, rawtohex(t.column_value) h
from table(sys.odcinumberlist(1,8,100)) t
order by 2;

         N H                                           
---------- --------------------------------------------
         1 C102                                        
         8 C109                                        
       100 C202                                        
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / NLS_SORT по числам
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]