Читать книгу Основы программирования в СУБД Oracle. SQL+PL/SQL. - О. А. Ткачев - Страница 15

ЧАСТЬ 2. SQL – ЯЗЫК СТРУКТУРИРОВАННЫХ ЗАПРОСОВ
Глава 3. Типы данных и встроенные функции
Числовые типы

Оглавление

Числовые типы используются для работы с числовыми данными. Можно использовать следующие форматы чисел:

– целые числа;

– вещественные числа в формате с фиксированной точкой;

– вещественные числа в формате с плавающей точкой.

При определении столбцов, содержащих числовые данные, можно использовать следующие спецификации:

NUMBER (n) – целое число не более n цифр;

NUMBER (n,m) – вещественное число с фиксированной точкой,

n – максимальное число цифр в записи числа а m – число цифр справа от десятичной точки;

NUMBER – вещественное число с плавающей точкой с точностью до 38 цифр.

В таблице 3.1 приведены основные функции, которые можно использовать при обработке данных числового типа.


Таблица 3.1. Основные функции для обработки чисел


Функция ROUND


Выполняет округление до ближайшего числа с заданной точностью (результат может быть не целым). Синтаксис:


ROUND (n,m)


n – численное значение;

m – точность округления.


Значение m может быть отрицательным, позиция округления отсчитывается влево.


Пример 3.2. Примеры использования функции ROUND


SELECT ROUND (147.76), ROUND (147.76,1), ROUND (147.76, -1)

FROM Dual;


Пример 3.3. Вывести значение зарплаты, округленное до 1000


SELECT employee_id, first_name, last_name, department_id, salary, ROUND (salary, -3)

FROM Employees;


Функция TRUNC


Усекает (отбрасывает) значащие цифры справа без округления. Синтаксис:


TRUNC (n, m)


Параметры n, m аналогичны параметрам функции ROUND.


Пример 3.4. Пример использования функции TRUNC


SELECT TRUNC (147.76), TRUNC (147.76,1), TRUNC (147.76, -1)

FROM Dual;


Функция MOD


Возвращает остаток от деления n на m. Синтаксис:


MOD (n,m)


где n и m – численные значения целого или вещественного типа.


Пример 3.5. Пример использования функции MOD


SELECT mod (5,2), mod (6.5,1),mod (6.5,2.2)

FROM Dual;


Пример 3.6. Найти сотрудников с нечетным рейтингом


SELECT employee_id, first_name, last_name,

department_id, rating_e

FROM Employees

WHERE MOD (rating_e,2) =1;


Пример 3.7. Вывести ту часть зарплаты сотрудника, которая меньше 1000


SELECT employee_id, first_name, last_name, department_id,

salary, MOD (salary,1000)

FROM Employees;


Функция POWER


Возводит число x в степень n. Синтаксис:


POWER (x,n)


x – численное значение;

n – степень, может иметь вещественный тип и отрицательное значение.


Пример 3.8. Пример использования функции POWER


SELECT POWER (2,2),POWER (9,0.5),POWER (10, -1)

FROM Dual;


Функция SQRT


Возвращает квадратный корень от числа. Синтаксис:


SQRT (x)


x – численное значение;


Пример 3.9. Пример использования функции SQRT


SELECT SQRT (1), SQRT (9),SQRT (7)

FROM Dual;


Основы программирования в СУБД Oracle. SQL+PL/SQL.

Подняться наверх