Лекция 19. Функции в запросах SQL
План:
- Агрегатные функции
- Преобразование текста
- Работа со строками
SQL позволяет выполнять различные арифметические операции над столбцами результирующего отношения. В конструкции <список_выбора> можно использовать константы, функции и их комбинации с арифметическими операциями и скобками.
В арифметических выражениях допускаются операции сложения (+), вычитания (-), деления (/), умножения (*), а также различные функции (COS, SIN, ABS - абсолютное значение и т.д.).
Агрегатные функции
В SQL также определены так называемые агрегатные функции, которые совершают действия над совокупностью одинаковых полей в группе записей. Среди них:
- AVG(<имя поля>) - среднее по всем значениям данного поля
- COUNT(<имя поля>) или COUNT (*) - число записей
- MAX(<имя поля>) - максимальное из всех значений данного поля
- MIN(<имя поля>) - минимальное из всех значений данного поля
- SUM(<имя поля>) - сумма всех значений данного поля
Следует учитывать, что каждая агрегирующая функция возвращает единственноезначение.
Область действия данных функции можно ограничить с помощью логического условия.
Преобразование текста
Часто, текстовые значения заполняются пользователями программного обеспечения по-разному: кто пишет Ф.И.О. с заглавной буквы, кто нет; кто-то пишет все заглавными буквами. Многие отчетные формы требуют унифицированного подхода, да и не только отчетные формы. Для решения этой задачи в SQL есть две функции UCASE - преобразует символы строки в верхний регистр и LCASE - преобразует символы строки в нижний регистр.
Работа со строками
MID(<text>, <start_num>, <num_chars>)- возвращает строку символов из середины текстовой строки с учетом начальной позиции и длины, где text - текстовая строка, из которой нужно извлечь символы, или столбец, содержащий текст; start_num - положение первого символа, который необходимо извлечь (начинаются с 1); num_chars - число возвращаемых символов.
Иногда приходится в качестве аргументов функции MID использовать выражения с функцией LEN:
LEN(column_name)- возвращает длину значения в поле записи.
Функция LEN( ) исключает из подсчета конечные пробелы.
Вопросы для самоконтроля:
- Какие операции и функции можно выполнять над данными в SQL?
- Что такое агрегатные функции? Какие функции входят в эту группу?
- Какие функции для работы со строками в SQL вам известны?
Литература
Основная литература
- Основы проектирования баз данных : Учебное пособие / О. Л. Голицына, Т. Л. Партыка, И. И. Попов. - 2-е изд., перераб. и доп.. - М. : Форум, 2012. - 416 с
- Основы проектирования баз данных : Учебное пособие для студ. учреждений сред. проф. образования / Г. Н. Федорова. - 2-е изд., стер.- М.: Издательский центр "Академия", 2016. - 224 с
Дополнительная литература:
- Информатика, автоматизированные информационные технологии и системы: учебник / В.А. Гвоздева . - М. : ИД "Форум": ИНФРА-М, 2014. - 544 с.
Интернет-ресурсы:
- Интернет Университета информационных технологий: http://www.intuit.ru
Дата добавления: 2021-01-26; просмотров: 484;