Funzioni definite dall'utente
Definire una funzione riutilizzabile
Sezione intitolata “Definire una funzione riutilizzabile”Una funzione definita dall’utente permette di aggiungere una nuova funzione al tuo database. È simile a una stored procedure, ma in genere nasce per restituire un valore o un risultato.
La funzione riceve argomenti ed esegue il calcolo definito, restituendo un valore.
Un esempio piccolo
Sezione intitolata “Un esempio piccolo”CREATE FUNCTION prezzo_con_iva(prezzo DECIMAL(10,2))RETURNS DECIMAL(10,2)BEGIN RETURN prezzo * 1.22;END;Perché può tornare utile
Sezione intitolata “Perché può tornare utile”Se hai un calcolo o una trasformazione che si ripete spesso, racchiuderla in una funzione può rendere il codice più ordinato.
Invece di riscrivere la stessa formula, puoi darle un nome.
Potresti poi usarla in una query:
SELECT nome, prezzo_con_iva(prezzo) AS prezzo_finaleFROM prodotti;Qui prezzo_con_iva restituisce un valore calcolato per ogni prodotto.
Una distinzione semplice da ricordare
Sezione intitolata “Una distinzione semplice da ricordare”Non è una regola assoluta per tutti i database, ma puoi pensare così:
- la procedura esegue passi
- la funzione restituisce qualcosa
Questa distinzione è utile quando inizi.