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!