Глава 9. Функции и операторы

Содержание

9.1. Логические операторы
9.2. Функции и операторы сравнения
9.3. Математические функции и операторы
9.4. Строковые функции и операторы
9.5. Функции и операторы двоичных строк
9.6. Функции и операторы для работы с битовыми строками
9.7. Поиск по шаблону
9.7.1. LIKE
9.7.2. Регулярные выражения SIMILAR TO
9.7.3. Регулярные выражения POSIX
9.8. Функции форматирования данных
9.9. Операторы и функции даты/времени
9.9.1. EXTRACT, date_part
9.9.2. date_trunc
9.9.3. AT TIME ZONE
9.9.4. Текущая дата/время
9.9.5. Задержка выполнения
9.10. Функции для перечислений
9.11. Геометрические функции и операторы
9.12. Функции и операторы для работы с сетевыми адресами
9.13. Функции и операторы текстового поиска
9.14. Функции генерирования UUID
9.15. XML-функции
9.15.1. Создание XML-контента
9.15.2. Условия с XML
9.15.3. Обработка XML
9.15.4. Отображение таблиц в XML
9.16. Функции и операторы JSON
9.16.1. Обработка и создание данных JSON
9.16.2. Язык путей SQL/JSON
9.17. Функции для работы с последовательностями
9.18. Условные выражения
9.18.1. CASE
9.18.2. COALESCE
9.18.3. NULLIF
9.18.4. GREATEST и LEAST
9.19. Функции и операторы для работы с массивами
9.20. Диапазонные функции и операторы
9.21. Агрегатные функции
9.22. Оконные функции
9.23. Выражения подзапросов
9.23.1. EXISTS
9.23.2. IN
9.23.3. NOT IN
9.23.4. ANY/SOME
9.23.5. ALL
9.23.6. Сравнение единичных строк
9.24. Сравнение табличных строк и массивов
9.24.1. IN
9.24.2. NOT IN
9.24.3. ANY/SOME (с массивом)
9.24.4. ALL (с массивом)
9.24.5. Сравнение конструкторов строк
9.24.6. Сравнение составных типов
9.25. Функции, возвращающие множества
9.26. Системные информационные функции и операторы
9.27. Функции для системного администрирования
9.27.1. Функции для управления конфигурацией
9.27.2. Функции для передачи сигналов серверу
9.27.3. Функции управления резервным копированием
9.27.4. Функции управления восстановлением
9.27.5. Фу��кции синхронизации снимков
9.27.6. Функции управления репликацией
9.27.7. Функции управления объектами баз данных
9.27.8. Функции обслуживания индексов
9.27.9. Функции для работы с обычными файлами
9.27.10. Функции управления рекомендательными блокировками
9.28. Триггерные функции
9.29. Функции событийных триггеров
9.29.1. Получение изменений в конце команды
9.29.2. Обработка объектов, удалённых командой DDL
9.29.3. Обработка события перезаписи таблицы
9.30. Системные информационные функции

PostgreSQL предоставляет огромное количество функций и операторов для встроенных типов данных. В этой главе описаны основные из них, тогда как некоторые специальные функции описываются в других разделах документации. Кроме того, пользователи могут определять свои функции и операторы, как описано в Части V. Просмотреть все существующие функции и операторы можно в psql с помощью команд \df и \do, соответственно.

В этой главе типы аргументов и результата функции обозначаются так:

repeat ( text, integer ) → text

В данном случае она говорит, что функция repeat принимает один текстовый и один целочисленный аргумент и возвращает результат текстового типа. Стрелка вправо также указывает на результат в примере использования, например:

repeat('Pg', 4) → PgPgPgPg

Если для вас важна переносимость, учтите, что практически все функции и операторы, описанные в этой главе, за исключением простейших арифметических и операторов сравнения, а также явно отмеченных функций, не описаны в стандарте SQL. Тем не менее частично эта расширенная функциональность присутствует и в других СУБД SQL и во многих случаях различные реализации одинаковых функций оказываются аналогичными и совместимыми.