Основы проектирования реляционных баз данных

         

Арифметические функции


SQL поддерживает полный набор арифметических операций и математических функций для построения арифметических выражений над колонками базы данных (+, -, *, /, ABS, LN, SQRT и т.д.). Список основных встроенных математических функций дан ниже в таблице 8.2.

Таблица 8.2. Математические функции SQL

Математическая функцияОписание
ABS(X)Возвращает абсолютное значение числа Х
ACOS(X)Возвращает арккосинус числа Х
ASIN(X)Возвращает арксинус числа Х
ATAN(X)Возвращает арктангенс числа Х
COS(X)Возвращает косинус числа Х
EXP(X)Возвращает экспоненту числа Х
SIGN(X)Возвращает -1, если Х<0,0, если Х=0, +1, если Х>0
LN(X)Возвращает натуральный логарифм числа Х
MOD(X,Y)Возвращает остаток от деления Х на Y
CEIL(X)Возвращает наименьшее целое, большее или равное Х
ROUND(X,n)Округляет число Х до числа с n знаками после десятичной точки
SIN(X)Возвращает синус числа Х
SQRT(X)Возвращает квадратный корень числа Х
TAN(X)Возвращает тангенс числа Х
FLOOR(X)Возвращает наибольшее целоеб меньшее или равное Х
LOG(a,X)Возвращает логарифм числа Х по основанию А
SINH(X)Возвращает гиперболический синус числа Х
COSH(X)Возвращает гиперболический косинус числа Х
TANH(X)Возвращает гиперболический тангенс числа Х
TRANC(X,n)Усекает число Х до числа с n знаками после десятичной точки
POWER(A,X)Возвращает значение А, возведенное в степень Х

Набор встроенных функций может изменяться в зависимости от версии СУБД одного производителя и также в СУБД различных производителей. Так, например, в СУБД SQLBase, Centure Inc. есть функция @ATAN2(X,Y), которая возвращает арктангенс Y/X, но отсутствует функция SIGN(X).

Арифметические выражения необходимы для получения данных, которые непосредственно не сохраняются в колонках таблиц базы данных, но значения которых необходимы пользователю. Допустим, что вам необходим список служащих, показывающий выплату, которую получил каждый служащий с учетом премий и штрафов.

SELECT ENAME, SAL, COMM, FINE, SAL + COMM - FINE FROM EMPLOYEE ORDER BY DEPNO;

Арифметическое выражение SAL + COMM - FINE выводится как новая колонка в результирующей таблице, которая вычисляется в результате выполнения запроса. Такие колонки называют еще производными (вычисляемыми) атрибутами или полями.



Содержание раздела