PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Fonction de création PostgreSQL

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 !