PostgreSQLLa base de données la plus sophistiquée au monde.
Documentation PostgreSQL 13.14 » Langage SQL » Fonctions et opérateurs

Chapitre 9. Fonctions et opérateurs

Table des matières

9.1. Opérateurs logiques
9.2. Fonctions et opérateurs de comparaison
9.3. Fonctions et opérateurs mathématiques
9.4. Fonctions et opérateurs sur des chaînes de caractères
9.4.1. format
9.5. Fonctions et opérateurs pour les chaînes binaires
9.6. Fonctions et opérateurs pour les chaînes de bit
9.7. Correspondance de motif
9.7.1. LIKE
9.7.2. Expressions rationnelles pour SIMILAR TO
9.7.3. Expressions rationnelles POSIX
9.8. Fonctions de formatage de type de données
9.9. Fonctions et opérateurs pour date/heure
9.9.1. EXTRACT, date_part
9.9.2. date_trunc
9.9.3. AT TIME ZONE
9.9.4. Date/Heure actuelle
9.9.5. Retarder l'exécution
9.10. Fonctions de support d'enum
9.11. Fonctions et opérateurs de géométrie
9.12. Fonctions et opérateurs pour les adresses réseau
9.13. Fonctions et opérateurs de recherche plein texte
9.14. Fonctions UUID
9.15. Fonctions XML
9.15.1. Produire du contenu XML
9.15.2. Prédicats XML
9.15.3. Traiter du XML
9.15.4. Correspondances tables et XML
9.16. Fonctions et opérateurs JSON
9.16.1. Traiter et créer des données JSON
9.16.2. Le langage de chemin SQL/JSON
9.17. Fonctions de manipulation de séquence
9.18. Expressions conditionnelles
9.18.1. CASE
9.18.2. COALESCE
9.18.3. NULLIF
9.18.4. GREATEST et LEAST
9.19. Fonctions et opérateurs tableau
9.20. Fonctions et opérateurs sur les intervalles
9.21. Fonctions d'agrégat
9.22. Fonctions de fenêtrage
9.23. Expressions de sous-requêtes
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. Comparaison de ligne simple
9.24. Comparaisons de ligne et de tableau
9.24.1. IN
9.24.2. NOT IN
9.24.3. ANY/SOME (array)
9.24.4. ALL (array)
9.24.5. Comparaison de constructeur de lignes
9.24.6. Comparaison de type composite
9.25. Fonctions renvoyant des ensembles
9.26. Fonctions et opérateurs d'information sur le système
9.27. Fonctions d'administration système
9.27.1. Fonctions de configuration
9.27.2. Fonctions d'envoi de signaux
9.27.3. Fonctions de contrôle de la sauvegarde
9.27.4. Fonctions de contrôle de la restauration
9.27.5. Fonctions de synchronisation d'image
9.27.6. Fonctions de gestion de la réplication
9.27.7. Fonctions de gestion des objets de la base
9.27.8. Fonctions de maintenance des index
9.27.9. Fonctions génériques d'accès aux fichiers
9.27.10. Fonctions sur les verrous consultatifs
9.28. Fonctions trigger
9.29. Fonctions de trigger d'événement
9.29.1. Capturer les modifications à la fin d'une commande
9.29.2. Traitement des objets supprimés par une commande DDL
9.29.3. Gérer un événement de réécriture de table
9.30. Fonctions d'informations statistiques
9.30.1. Inspecter les listes MCV

PostgreSQL fournit un grand nombre de fonctions et d'opérateurs pour les types de données natifs. Ce chapitre en décrit la plupart, bien que certaines fonctions spéciales apparaissent dans des sections plus adéquates du manuel. Les utilisateurs peuvent aussi définir leur propres fonctions et opérateurs, comme décrit dans Partie V. Les méta-commandes \df et \do de psql peuvent être utilisées pour lister, respectivement, toutes les fonctions et tous les opérateurs disponibles.

La notation utilisée dans ce chapitre pour décrire les types de données des arguments et du résultat d'une fonction ou d'un opérateur ressemble à ceci 

repeat ( text, integer ) → text
  

qui signifie que la fonction repeat prend un premier argument de type text et un deuxième argument de type integer. La flèche droite est aussi utilisée pour indiquer le résultat d'un exemple, par exemple : one integer argument and returns a result of type text. The right arrow is also used to indicate the result of an example, thus:

repeat('Pg', 4) → PgPgPgPg
  

Si vous êtes préoccupé par la portabilité, notez que la plupart des fonctions et opérateurs décrits dans ce chapitre, à l'exception des opérateurs arithmétiques et de comparaison triviaux, et de certaines fonctions indiquées explicitement, ne sont pas indiqués dans le standard SQL. Certaines sont présentes dans d'autres moteurs de bases de données. Dans certains cas, elles sont compatibles et cohérentes sur les différentes implémentations.