powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Нули заменить на NULL?
6 сообщений из 6, страница 1 из 1
Нули заменить на NULL?
    #40089156
Anton_1234
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть какая-нибудь функция для замены 0 на NULL?
Типа NVL наоборот.
Вычисляю в запросе суммы, хочу чтобы если сумма равна нулю, то поле оставалось пустым.
...
Рейтинг: 0 / 0
Нули заменить на NULL?
    #40089161
Asmodeus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Anton_1234,

NULLIF
...
Рейтинг: 0 / 0
Нули заменить на NULL?
    #40089163
Anton_1234
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Asmodeus,
самое то, что надо.
Спасибо!
...
Рейтинг: 0 / 0
Нули заменить на NULL?
    #40089237
qlost
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, кто авторитетно ответит, что эффективней: nullif или case?
...
Рейтинг: 0 / 0
Нули заменить на NULL?
    #40089244
Asmodeus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
qlost
Кстати, кто авторитетно ответит, что эффективней: nullif или case?

Трасса 10053 для используемой версии. Тут версия не указана.
...
Рейтинг: 0 / 0
Нули заменить на NULL?
    #40089245
Фотография SY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qlost
Кстати, кто авторитетно ответит, что эффективней: nullif или case?


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
SQL> explain plan for select 1 from dual where nullif(dummy,'x') is null;

Explained.

SQL> select * from table(dbms_xplan.display);

PLAN_TABLE_OUTPUT
--------------------------------------------------------------------------------
Plan hash value: 272002086

--------------------------------------------------------------------------
| Id  | Operation         | Name | Rows  | Bytes | Cost (%CPU)| Time     |
--------------------------------------------------------------------------
|   0 | SELECT STATEMENT  |      |     1 |     2 |     2   (0)| 00:00:01 |
|*  1 |  TABLE ACCESS FULL| DUAL |     1 |     2 |     2   (0)| 00:00:01 |
--------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

PLAN_TABLE_OUTPUT
--------------------------------------------------------------------------------

   1 - filter(CASE "DUMMY" WHEN 'x' THEN NULL ELSE "DUMMY" END  IS NULL)

13 rows selected.

SQL>



SY.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Нули заменить на NULL?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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