Le funzioni MIN e MAX di SQL fanno parte delle funzioni di ag­gre­ga­zio­ne che per­met­to­no di rilevare i valori minimi e massimi in record di dati, tabelle e colonne. Sono uti­liz­za­te per ot­ti­miz­za­re e ve­lo­ciz­za­re le query di dati e con­sen­to­no un’ef­fi­cien­te analisi dei dati per in­di­vi­dua­re tendenze, anomalie o processi.

SQL MIN e MAX: de­fi­ni­zio­ne e si­gni­fi­ca­to

Le funzioni SQL MIN e MAX fanno parte delle funzioni di ag­gre­ga­zio­ne di SQL. Sono uti­liz­za­te per eseguire calcoli con valori numerici o sequenze di caratteri e re­sti­tui­sco­no un singolo valore come risultato. Ad esempio, con MIN e MAX è possibile trovare i valori minimi e massimi in record di dati, tabelle, colonne o righe e metterli a confronto, a seconda della query e dei parametri uti­liz­za­ti.

Poiché queste funzioni per­met­to­no di ve­lo­ciz­za­re no­te­vol­men­te le analisi complesse dei dati, non è possibile im­ma­gi­na­re di usare SQL senza MIN e MAX. Inoltre, è possibile filtrare tabelle di prodotti, prezzi o costi in base ai valori minimi e massimi o in­di­vi­dua­re anomalie. A seconda dei parametri opzionali e delle query di ricerca, è possibile combinare le funzioni con ulteriori comandi SQL come SQL WHERE, SQL JOIN, HAVING o GROUP BY.

Consiglio

Vuoi saperne di più su SQL, ma finora hai avuto poco a che fare con questo lin­guag­gio di pro­gram­ma­zio­ne? Allora leggi la nostra in­tro­du­zio­ne a SQL mediante esempi per avere una prima visione d’insieme.

La sintassi delle funzioni SQL MIN e MAX

Le funzioni MIN e MAX sono utili per eseguire semplici query di dati e, in com­bi­na­zio­ne con altri operatori SQL, anche per analisi complesse.

La sintassi si presenta così:

MIN(colonna o sequenza di caratteri)
MAX(colonna o sequenza di caratteri)
sql

Se vuoi applicare queste funzioni su valori numerici se­le­zio­na­ti nei tuoi record di dati, combina MIN e MAX con i comandi SQL SELECT e la clausola FROM. In questo modo puoi se­le­zio­na­re la tabella de­si­de­ra­ta e le colonne o righe in­te­res­sa­te:

SELECT  MIN(nomecolonna o sequenzacaratteri) FROM  nometabella
MAX(colonna o sequenzacaratteri)  FROM  nometabella
sql

Con ulteriori parametri e comandi è possibile definire la query con maggiore pre­ci­sio­ne. Alcuni di questi sono:

  • DISTINCT: elimina i duplicati e le righe doppie dalle query di dati per ottenere elenchi univoci.
  • WHERE: uti­liz­za­to prima del fil­trag­gio con MIN e MAX, esclude de­ter­mi­na­ti record di dati e si concentra solo sui sot­toin­sie­mi de­si­de­ra­ti.
  • GROUP BY: raggruppa i record di dati in­ter­ro­ga­ti in una o più colonne, ad esempio per regione o categoria, e permette di ana­liz­za­re tendenze o modelli.
  • HAVING: filtra ul­te­rior­men­te i risultati dopo l’ag­gre­ga­zio­ne di valori minimi e massimi, ad esempio per vi­sua­liz­za­re solo i risultati per de­ter­mi­na­ti criteri.
  • BETWEEN: in com­bi­na­zio­ne con MIN e MAX, filtra i risultati in base a de­ter­mi­na­ti in­ter­val­li di valori.
  • JOIN: consente di riunire nella tabella di de­sti­na­zio­ne i valori minimi e massimi di una o più tabelle.

Possibili ap­pli­ca­zio­ni di SQL MIN e MAX

Le pos­si­bi­li­tà di ap­pli­ca­zio­ne delle funzioni SQL MIN e MAX sono pra­ti­ca­men­te il­li­mi­ta­te, in par­ti­co­la­re se combinate con ulteriori parametri. Alcune delle ap­pli­ca­zio­ni possibili sono:

  • Fil­trag­gio di prezzi massimi e minimi in tabelle di prodotti
  • Ri­le­va­men­to dei file più grandi e più piccoli
  • Analisi dei salari dei di­pen­den­ti
  • In­di­ca­zio­ne della frequenza di sequenze di caratteri, parole o valori in un record di dati
  • In­di­vi­dua­zio­ne di anomalie per il su­pe­ra­men­to per eccesso o difetto di valori medi o soglie
  • Ri­co­no­sci­men­to di picchi di potenza o cali delle pre­sta­zio­ni
  • Ri­le­va­men­to di tendenze sulla base di valori medi e rapporti per regione, team, categoria di prodotti o servizio
  • Analisi delle scorte in magazzino e dei prodotti
  • Li­mi­ta­zio­ne delle analisi dei dati per record di dati di grandi di­men­sio­ni
Consiglio

Per garantire elevate pre­sta­zio­ni nella gestione dei dati è ne­ces­sa­rio scegliere la giusta soluzione di hosting per i sistemi di gestione dei database. Scegli l’hosting SQL server di IONOS e scopri le offerte più adatte alle tue esigenze. Ap­pro­fit­ta dei rapidi tempi di accesso, delle elevate pre­sta­zio­ni, della sicurezza in caso di anomalie e della pro­te­zio­ne dei dati in con­for­mi­tà con gli standard europei.

Server virtuali (VPS)
Affidati ai VPS e server di IONOS, il tuo partner digitale cer­ti­fi­ca­to ISO
  • 1 Gbps di larghezza di banda e traffico il­li­mi­ta­to
  • Di­spo­ni­bi­li­tà del 99,99% e cer­ti­fi­ca­zio­ne ISO
  • As­si­sten­za 24/7 e con­su­len­te personale

Esempi pratici per SQL MIN e MAX

Per il­lu­stra­re il fun­zio­na­men­to delle funzioni SQL MIN e MAX ti mostriamo alcuni esempi. A tal fine scegliamo una tabella con prodotti e i relativi prezzi. Tieni presente che per assegnare un nome alle colonne della tabella di de­sti­na­zio­ne per MIN o MAX, utilizzi l’alias AS con il nome di colonna de­si­de­ra­to nella sintassi.

Tabella di esempio:

Prodotto Prezzo Categoria
Shampoo 22,90 € Capelli
Lozione per le mani 45,99 € Mani
Crema per i piedi 11,99 € Piedi
Lozione per il corpo 9,99 € Corpo

Se vuoi in­di­vi­dua­re il prodotto con il prezzo più basso o più alto nella tabella di prodotti ed emetterlo come riga singola, la sintassi da usare è la seguente:

MIN:

SELECT  MIN(prezzo)  FROM  prodotti;
sql

MAX:

SELECT  MAX(prezzo)  FROM  prodotti;
sql

Se vuoi in­di­vi­dua­re entrambi i valori nella tabella di de­sti­na­zio­ne, utilizza la seguente sintassi e definisci la colonna con i valori minimi e massimi con l’alias AS:

SELECT  MIN(prezzo)  AS  min_prezzo, MAX(prezzo)  AS  max_prezzo  FROM  prodotti
sql

In com­bi­na­zio­ne con ulteriori comandi e parametri è possibile definire più esat­ta­men­te la tua query di ricerca o limitarla per categorie. Per vi­sua­liz­za­re i valori minimi e massimi in una categoria di prodotti a seconda della categoria, utilizza ad esempio anche il comando SQL GROUP BY:

SELECT  categoria,
MIN(prezzo)  AS  min_prezzo, MAX(prezzo)  AS  max_prezzo
FROM  prodotti
GROUP BY  categoria
sql

Nella tabella di de­sti­na­zio­ne otterrai quindi ri­spet­ti­va­men­te i valori minimi e massimi, ordinati per categorie dei prodotti.

In com­bi­na­zio­ne con SQL HAVING, le funzioni MIN e MAX ti per­met­to­no di filtrare ul­te­rior­men­te i valori in­di­vi­dua­ti in base a una con­di­zio­ne definita. In questo modo, ad esempio, puoi stabilire che i valori minimi di una categoria in una tabella di prodotti non devono far parte dell’insieme dei risultati, se inferiori a un certo valore. La sintassi per questo esempio è la seguente:

SELECT  categoria,
MAX(prezzo)  AS  max_prezzo
FROM  prodotti
GROUP BY  categoria
HAVING MIN(prezzo)>10;
sql

Nella nostra tabella di esempio, quindi, la lozione per il corpo da 9,99 € non farebbe parte della tabella di de­sti­na­zio­ne.

Al­ter­na­ti­ve a SQL MIN e MAX

Poiché le funzioni SQL MIN e MAX sono funzioni di ag­gre­ga­zio­ne di SQL, per il ri­le­va­men­to di valori aggregati sono di­spo­ni­bi­li anche altre funzioni simili. Alcune di queste sono:

  • AVG: con SQL AVG puoi filtrare i valori medi di tabelle o colonne se­le­zio­na­te, ad esempio le tem­pe­ra­tu­re medie dei mesi di un anno.
  • COUNT: con SQL COUNT è possibile contare il numero di record di dati di una tabella o colonna se­le­zio­na­ta.
  • SUM: SQL SUM dà la somma di tutti i valori in una colonna se­le­zio­na­ta.
  • BETWEEN: SQL BETWEEN permette di ana­liz­za­re i dati in un in­ter­val­lo di valori definito.
  • LIKE: l’operatore SQL LIKE re­sti­tui­sce valori numerici o sequenze di caratteri che cor­ri­spon­do­no a un modello pre­de­fi­ni­to con o senza se­gna­po­sti.
Vai al menu prin­ci­pa­le