Функция SIGN определяет знак числа. Если п положительное, то функция возвращает 1. Если отрицательное — возвращается -1. Если равно нулю, то возвращается 0. Например:
SELECT SIGNC100.22) XI, SIGN(-100.22) Х2, SIGN(O) ХЗ FROM DUAL
XI Х2 ХЗ
"1 Л о
Функция MOD(n, m)
Функция MOD возвращает от деления п на т. Например:
SELECT M0D(10, 3) XI, M0D(10, 2) Х2, M0D(100, 0) ХЗ FROM DUAL
XI X2 ХЗ
~I 0 100
Интересной особенностью данной функции является возможность передачи m равного нулю — при этом не возникает ошибки деления на 0.
Функция POWER(n, m)
Функция POWER возводит число п в степень т. Степень может быть дробной и отрицательной, что существенно расширяет возможности данной функции.
SELECT P0WERC10, 2) XI, P0WER(100, 1/2) Х2, P0WER(1000, 1/3) ХЗ, P0WER(1000, -1/3) Х4 FROM DUAL
|
XI |
X2 |
ХЗ |
X4 |
|
100 |
10 |
10 |
0.1 |
В некоторых случаях при вызове данной функции может возникнуть исключительная ситуация. Например:
SELECT P0WERC-100, 1/2) Х2 FROM DUAL
В данном случае производится попытка вычисления квадратного корня от отрицательного числа, что приведет к возникновению ошибки ORA-01428 «Аргумент вне диапазона».
Функция SQRT(n)
Данная функция возвращает квадратный корень от числа п. Например:
SELECT SQRT(IOO) X FROM DUAL
Функции EXP(n) и LN(n)
Функция EXP возводит е в степень п, а функция LN вычисляет натуральный логарифм от п (при этом п должно быть больше нуля). Пример:
SELECT EXP(2) XI, LN(1) X2, LN(EXP(2)) ХЗ FROM DUAL
XI X2 ХЗ
2,71828182845905 0 2
Попытка передать функции LN отрицательное значение приводит к возникновению ошибки ORA-1428.
Функция LOG(n, m)
Функция LOG производит вычисление логарифма m по основанию п. Пример:
SELECT L0G(2, 8) XI, L0G(10, 100) Х2 FROM DUAL
XI X2
~3 2
предыдущаяследующая