Le funzioni PostgreSQL sono procedure memorizzate che consentono di memorizzare un insieme di operazioni di database in una funzione che può essere chiamata ripetutamente senza digitare manualmente le istruzioni ogni volta. È una grande utilità per il riutilizzo del database e l'automazione nelle applicazioni. È inoltre possibile utilizzarlo per creare funzioni definite dall'utente e procedure memorizzate. Ecco come utilizzare il comando di creazione della funzione di PostgreSQL.
Funzione di creazione di PostgreSQL
Ecco la sintassi di 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;
Nella query precedente, devi specificare
nome_funzione – nome della funzione
[OR REPLACE] – parola chiave opzionale per modificare la funzione esistente
funzione_corpo – insieme di operazioni da eseguire come parte della funzione
ritorno istruzione con o senza una variabile/valore di ritorno
dichiara variabili per memorizzare i valori delle funzioni
lingua – PostgreSQL ti consente di definire funzioni in vari linguaggi come PostgreSQL, SQL, C, Python e altri linguaggi procedurali.
Bonus Lettura:PostgreSQL Crea Schema
CREA FUNZIONE esempio
Ecco un esempio di come creare una stored procedure in PostgreSQL. Supponiamo che tu abbia la seguente tabella vendite
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
Bonus Lettura:PostgreSQL Crea database
Creiamo una funzione total() che conta il numero di righe in vendite tabella
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
Nella query precedente, abbiamo definito la funzione total() in modo tale che esegua la query SQL menzionata tra BEGIN e END e memorizzi il risultato nella variabile dichiarata $total , che viene restituita dopo l'esecuzione della funzione.
Ecco come eseguire la funzione PostgreSQL
postgres=# select total(); total ------- 10
Bonus Lettura:come creare istogramma in PostgreSQL
Si spera che il tutorial sopra ti aiuti a creare funzioni definite dall'utente e procedure memorizzate in PostgreSQL.
Ubiq semplifica la visualizzazione dei dati in pochi minuti e il monitoraggio in dashboard in tempo reale. Provalo oggi!