Les fonctions PostgreSQL sont des procédures stockées qui vous permettent de stocker un ensemble d'opérations de base de données dans une fonction qui peut être appelée à plusieurs reprises sans saisir manuellement les instructions à chaque fois. C'est un excellent utilitaire pour la réutilisation des bases de données et l'automatisation dans les applications. Vous pouvez également l'utiliser pour créer des fonctions définies par l'utilisateur et des procédures stockées. Voici comment utiliser la commande de fonction de création de PostgreSQL.
Fonction de création PostgreSQL
Voici la syntaxe de PostgreSQL CREATE FUNCTION.
CREATE [OR REPLACE] FUNCTION function_name (arguments) RETURNS return_datatype AS $variable_name$ DECLARE declaration; [...] BEGIN < function_body > [...] RETURN { variable_name | value } END; LANGUAGE plpgsql;
Dans la requête ci-dessus, vous devez spécifier
nom_fonction – nom de la fonction
[OR REPLACE] - mot-clé facultatif pour modifier la fonction existante
function_body – ensemble d'opérations à exécuter dans le cadre de la fonction
retour instruction avec ou sans variable/valeur de retour
déclarer variables pour stocker les valeurs des fonctions
langue – PostgreSQL vous permet de définir des fonctions dans différents langages tels que PostgreSQL, SQL, C, Python et d'autres langages procéduraux.
Lecture bonus :PostgreSQL Créer un schéma
Exemple de CRÉATION DE FONCTION
Voici un exemple de création de procédure stockée dans PostgreSQL. Disons que vous avez le tableau suivant ventes
postgres=# select * from sales; order_date | sale ------------+------ 2020-04-01 | 210 2020-04-02 | 125 2020-04-03 | 150 2020-04-04 | 230 2020-04-05 | 200 2020-04-10 | 220 2020-04-06 | 250 2020-04-07 | 215 2020-04-08 | 300 2020-04-09 | 250
Lecture bonus :création de base de données PostgreSQL
Créons une fonction total() qui compte le nombre de lignes dans ventes tableau
postgres=# CREATE OR REPLACE FUNCTION total() RETURNS integer AS $total$ declare total integer; BEGIN SELECT count(*) into total FROM sales; RETURN total; END; $total$ LANGUAGE plpgsql; CREATE FUNCTION
Dans la requête ci-dessus, nous avons défini la fonction total() de sorte qu'elle exécute la requête SQL mentionnée entre BEGIN et END et stocke le résultat dans la variable déclarée $total , qui est renvoyée après l'exécution de la fonction.
Voici comment exécuter la fonction PostgreSQL
postgres=# select total(); total ------- 10
Lecture bonus :comment créer un histogramme dans PostgreSQL
Espérons que le didacticiel ci-dessus vous aidera à créer une fonction définie par l'utilisateur et une procédure stockée dans PostgreSQL.
Ubiq permet de visualiser facilement les données en quelques minutes et de les surveiller dans des tableaux de bord en temps réel. Essayez-le aujourd'hui !