SQL ha molte funzioni built-in. Per richiamare le quali utiliziamo la seguente sintassi:
Abbiamo due tipi di funzioni in SQL:
Le funzioni builtin variano in base al tipo database utilizzato, vediamone alcune tra le più utilizzate tra Access e SQLServer
Funzione |
Descrizione |
AVG(nome_colonna) |
Restituisce il valore medio di una colonna |
COUNT(nome_colonna) |
Restituisce il numero di righe (escludendo quelle con valore NULL) di una colonna |
COUNT(*) |
Restituisce il numero di righe selezionate |
COUNT(DISTINCT nome_colonna)
|
Restituisce il numero di righe diverse selezionate
|
FIRST(nome_colonna) |
Restituisce il valore del primo record di un campo specificato |
LAST(nome_colonna) |
Restituisce il valore dell’ultimo record di un campo specificato |
MAX(nome_colonna) |
Il valore massimo in una colonna |
MIN(nome_colonna) |
Il valore minimo |
SUM(nome_colonna) |
La somma dei valori di una colonna |
Funzione |
Descrizione |
UCASE(c) |
Converte un campo in maiuscole |
LCASE(c) |
Converte un campo minuscole |
MID(c,inizio [,fine]) |
Estrae dei caratteri da un campo di testo |
LEN(c) |
Restituisce la lunghezza di un campo di testo |
INSTR(c) |
Restituisce la posizione di un carattere in un capmpo di testo |
LEFT(c,numero_di_caratteri) |
Restituisce la parte sinistra di un campo di testo |
RIGHT(c, numero_di_caratteri) |
Restituisce la parte destra di un campo di testo |
ROUND(c,decimali) |
Arrotonda campo numerico al numero di decimali specificato |
MOD(x,y) |
Restituisce il resto di una divisione |
NOW() |
Restituisce la data corrente di sistema |
FORMAT(c,format) |
Cambia il modo in cui un campo è visualizzato |
DATEDIFF(d,date1,date2) |
Per fare calcoli sulle date |
Funzione |
Descrizione |
abs(espressione_numerica) |
valore assoluto |
acos( espressione_numerica) |
arcoseno |
ascii(character_espressione) |
converte un carettere nel suo codice ASCII |
asin( espressione_numerica) |
Arcoseno |
atan( espressione_numerica) |
arcotangente |
cast(espressione as tipo_di_dato) |
converte una espressione SQL in un determinato tipo di dato |
char(espressione_intera) |
Converte in ASCII ne carattere corrispondente. |
convert(data_type [(length)], espressione [, style]) |
Converte dati da un tipo ad un altro |
cos(espressione_numerica) |
coseno |
cot(espressione_numerica) |
cotangente |
dateadd(datepart, number, date) |
aggiunge un numer alla parte della data (esempio 3 mesi) al valore datetime |
datediff(datepart, startdate, enddate) |
calcola la differenza tra due date (in giorni oppure mesi etc... in base al parametro datepart) |
datename(datepart, date) |
Il nome della parte della data |
datepart(datepart, date) |
Il valore della parte della data |
day(date) |
Il giorno della data passata |
exp(espressione_numerica) |
esponente |
getdate( ) |
la data corrente |
isdate(espressione) |
valuta se l'espressione è di tipo DATETIME |
isnull(espressione, valore_di_sostituzione) |
se l'espressione è null, la sostituisce con il secondo valore |
isnumeric(espressione) |
valuta se l'espressione è di tipo NUMERIC. |
left(espressione, numero) |
la parte di stringa a partire dal numero |
len(string_espressione) |
la lunghezza della stringa |
log(espressione_numerica) |
logaritmo naturale |
log10(espressione_numerica) |
logaritmo in base 10 |
lower(character_espressione) |
converte in minuscolo |
ltrim(character_espressione) |
toglie gli spazi a sinistra |
month(date) |
Il mese della data inserita |
nullif(espressione, espressione) |
da null se espressioni sono equivalenti |