Funzioni definite dall'utente
Quando vuoi insegnare al database una piccola operazione nuova
Sezione intitolata “Quando vuoi insegnare al database una piccola operazione nuova”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.
Pensa a una calcolatrice con un tasto personalizzato. Premi quel tasto, gli dai un numero, e lei ti restituisce il risultato del calcolo che usi spesso.
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 sempre la stessa formula, dai un nome a quell’idea.
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 scorciatoia mentale aiuta molto quando inizi.