Функция Oracle NANVL ()
Описание
Эта функция используется для возврата альтернативного значения n1, если входным значением n2 является NaN (не число), и возвращает n2, если n2 не является NaN. Эта функция полезна только для чисел с плавающей точкой типа BINARY_FLOAT или BINARY_DOUBLE.
Функция принимает любой числовой или нечисловой тип данных (может быть неявно преобразован в числовой тип данных) в качестве аргумента.
Если аргумент BINARY_FLOAT, то функция возвращает BINARY_DOUBLE. В противном случае функция возвращает тот же числовой тип данных, что и аргумент.
Синтаксис:
NANVL (n2, n1)
Пример:
У нас есть пример таблицы float_point_test с тремя столбцами dec_num типа «NUMBER (10,2)», bin_double типа «BINARY_DOUB LE» и bin_float типа «BINARY_FLOAT». Вот таблица.
SQL> SELECT * FROM float_point_test; DEC_NUM BIN_DOUBLE BIN_FLOAT ---------- ---------- ---------- 1513,67 1,514E + 003 1,514E + 003
Теперь вставьте строку в таблицу float_point_test и просмотрите таблицу. Вот команда ниже.
SQL> INSERT INTO float_point_test VALUES (0, 'NaN', 'NaN'); 1 ряд создан. SQL> SELECT * FROM float_point_test; DEC_NUM BIN_DOUBLE BIN_FLOAT ---------- ---------- ---------- 1513,67 1,514E + 003 1,514E + 003 0 Нан Нан
В приведенном ниже примере возвращается bin_float, если это число. В противном случае возвращается 0.
SELECT bin_float, NANVL(bin_float,0)
FROM float_point_test;
Вот результат.
BIN_FLOAT NANVL (BIN_FLOAT, 0) ---------- ------------------ 1,514E + 003 1,514E + 003 Нэн 0
Новый контент: Composer: менеджер зависимостей для PHP , R программирования