преобразование varchar2 в число не приводит к правильному порядку результатов - PullRequest
1 голос
/ 07 марта 2011

Здравствуйте, я работаю над оракулом БД, у которого есть идентификатор таблицы как varchar2, который на самом деле содержит только цифры, например. 2000, 30201. Теперь мне нужно сравнить эти значения как числа, поэтому я использую функцию TO_NUMBER (), но результаты по-прежнему не получаются. Пример кода приведен ниже. Любая помощь очень ценится.

SELECT ID FROM facty WHERE to_number(ID)>2 ORDER BY ID

текущий результат: 11, 4, 5, 6, 8, 9

Мне нужно произвести 4, 5, 6, 8, 9,11

1 Ответ

2 голосов
/ 07 марта 2011

Не используйте Oracle, но я предполагаю, что вам нужно включить to_number(id) и ORDER BY. Ваш текущий запрос ORDER BY использует поле varchar, а не числовое преобразование.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...