Вычисляемые поля
Язык SQL позволяет создавать вычисляемые поля в тексте запроса. Для реализации этой функции в запросе просто приводится выражение, в котором используются арифметические и математические операторы, а также имена полей в качестве переменных. В результате выполнения запроса с вычисляемыми полями выборка будет содержать не только информацию из таблиц базы данных, но и дополнительную информацию, полученную в результате вычисления заданного выражения.
Помимо математических операций, в SQL поддерживается ряд строковых функций, выполняющий такие операции, как конкатенация строк, выделение подстроки, поиск подстроки внутри строки и ряд других. В SQL-запросах также могут применяться функции преобразования символьного типа в числовой и наоборот, символьного типа в дату и т. п.
При создании вычисляемого поля можно использовать следующие арифметические операторы:
· оператор сложения (+);
· оператор вычитания (-);
· оператор умножения (*);
· оператор деления (/).
Приоритет перечисленных операторов соответствует общепринятому: сначала выполняются умножение и деление, затем — сложение и вычитание. Порядком выполнения операторов можно управлять с помощью круглых скобок.
Рассмотрим пример использования вычисляемых полей. Для этого на основании данных таблицы Продажи вычислим для каждого товара сумму денег, полученных за проданный товар (произведение цены на количество проданного товара) и сумму, на которую заказано товаров (произведение цены на количество заказанного товара), а также разность между ними:
SELECT [Код товара]. Цена. Заказано. Продано.
Цена*Продано. Цена*3аказано,
Цена*Заказано-Цена*Продано
FROM Продажи
Данный запрос содержит три вычисляемых поля. Результат его выполнения приведен на рис. 20.
Помимо арифметических операторов допускается использование ряда математических функций, например:
· ABS — вычисление абсолютного значения;
· ROUND — округление;
· SQR — извлечение квадратного корня;
· ЕХР — экспонента;
· LOG — натуральный логарифм;
· SIN, COS, TAN — тригонометрические функции.
Арифметические операторы и математические функции можно использовать как в списке полей после ключевого слова SELECT, так и в предложении, задающем условие выборки (WHERE).
Рис.20. Результат выполнения запроса с вычисляемыми полями
Набор математических функций зависит от конкретной реализации языка SQL. Синтаксис одинаковых функций в разных реализациях также может различаться (например, функция вычисления квадратного корня может обозначаться и как SQR,и как SQRT).
Дата добавления: 2015-10-21; просмотров: 767;