Глава 9. Функции и операторы
Содержание
- 9.1. Логические операторы
- 9.2. Функции и операторы сравнения
 - 9.3. Математические функции и операторы
 - 9.4. Строковые функции и операторы
 - 9.5. Функции и операторы двоичных строк
 - 9.6. Функции и операторы для работы с битовыми строками
 - 9.7. Поиск по шаблону
  - 9.2. Функции и операторы сравнения
 - 9.8. Функции форматирования данных
- 9.9. Операторы и функции даты/времени
  - 9.10. Функции для перечислений
- 9.11. Геометрические функции и операторы
 - 9.12. Функции и операторы для работы с сетевыми адресами
 - 9.13. Функции и операторы текстового поиска
 - 9.14. Функции генерирования UUID
 - 9.15. XML-функции
  - 9.11. Геометрические функции и операторы
 - 9.16. Функции и операторы JSON
 - 9.17. Функции для работы с последовательностями
- 9.18. Условные выражения
  - 9.19. Функции и операторы для работы с массивами
- 9.20. Диапазонные/мультидиапазонные функции и операторы
 - 9.21. Агрегатные функции
 - 9.22. Оконные функции
 - 9.23. Выражения подзапросов
  - 9.20. Диапазонные/мультидиапазонные функции и операторы
 - 9.24. Сравнение табличных строк и массивов
 - 9.25. Функции, возвращающие множества
- 9.26. Системные информационные функции и операторы
  - 9.26.1. Функции получения информации о сеансе
- 9.26.2. Функции для проверки прав доступа
 - 9.26.3. Функции для определения видимости
 - 9.26.4. Функции для обращения к системным каталогам
 - 9.26.5. Функции получения информации и адресации объектов
 - 9.26.6. Функции получения комментариев
 - 9.26.7. Функции проверки допустимости данных
 - 9.26.8. Функции получения информации об идентификаторах транзакций и снимках состояния
 - 9.26.9. Функции получения информации о фиксации транзакций
 - 9.26.10. Функции управления данными
  - 9.26.2. Функции для проверки прав доступа
 
- 9.26.1. Функции получения информации о сеансе
 - 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.27.2. Функции для передачи сигналов серверу
 
- 9.27.1. Функции для управления конфигурацией
 - 9.28. Триггерные функции
- 9.29. Функции событийных триггеров
  - 9.30. Системные информационные функции
 
PostgreSQL предоставляет огромное количество функций и операторов для встроенных типов данных. В этой главе описаны основные из них, тогда как некоторые специальные функции описываются в других разделах документации. Кроме того, пользователи могут определять свои функции и операторы, как описано в Части V. Просмотреть все существующие функции и операторы можно в psql с помощью команд \df и \do, соответственно.
В этой главе типы аргументов и результата функции обозначаются так:
repeat(text,integer) →text
 В данном случае она говорит, что функция repeat принимает один текстовый и один целочисленный аргумент и возвращает результат текстового типа. Стрелка вправо также указывает на результат в примере использования, например: 
repeat('Pg', 4) → PgPgPgPgЕсли для вас важна переносимость, учтите, что практически все функции и операторы, описанные в этой главе, за исключением простейших арифметических и операторов сравнения, а также явно отмеченных функций, не описаны в стандарте SQL. Тем не менее частично эта расширенная функциональность присутствует и в других СУБД SQL и во многих случаях различные реализации одинаковых функций оказываются аналогичными и совместимыми.