Le richieste di dati provengono da tutti i lati dell'organizzazione aziendale moderna. E i professionisti dei dati sono sottoposti a un'enorme pressione per gestire più fonti diverse di dati, in tempi rapidi.
Per interrogare e gestire efficacemente un'ampia varietà di insiemi di dati è necessaria una conoscenza di base del linguaggio di interrogazione strutturato (SQL), che si basa su due funzionalità fondamentali: le funzioni scalari e le funzioni aggregate. Ma anche i professionisti hanno bisogno di un ripasso ogni tanto: per questo abbiamo raccolto un elenco delle funzioni scalari e aggregate di SQL più comunemente utilizzate e degli esempi per aiutarvi a gestire il mondo selvaggio dei dati.
Funzioni scalari in SQL
I professionisti dei dati hanno spesso bisogno di manipolare singoli valori di dati per standardizzare il formato dei dati in un set di dati o per estrarre pezzi specifici di dati da una stringa più grande. Le funzioni scalari possono aiutare in questa manipolazione.
Ad esempio, un professionista dei dati può utilizzare la funzione UCASE per visualizzare i nomi dei clienti in maiuscolo o la funzione SUBSTRING per estrarre il numero di telefono di un cliente da una stringa contenente le sue informazioni di contatto.
1. CONCATENATO
La funzione CONCAT può combinare più stringhe in un'unica stringa. Supponiamo di voler estrarre il nome completo di un cliente, in modo da poter inserire un'e-mail a lui indirizzata. Si utilizza la funzione CONCAT per combinare il nome e il cognome del cliente in questo modo:
SELECT CONCAT(nome_nome, ' ', cognome) FROM clienti;
2. UCASE
La funzione UCASE serve a convertire una stringa in maiuscolo. In questo modo si standardizza il formato dei dati in un set di dati, in modo da poter confrontare i valori e cercare i dati. Un professionista dei dati potrebbe usare la funzione UCASE per far sì che tutti i nomi dei clienti siano sempre visualizzati in maiuscolo.
Per la funzione UCASE, l'esempio di query è il seguente:
SELEZIONARE UCASE(nome_nome) FROM clienti;
3. LCASE
LCASE è la funzione uguale e contraria di UCASE. LCASE converte una stringa in minuscolo. Ad esempio, un professionista dei dati potrebbe usare la funzione LCASE per assicurarsi che le e-mail dei clienti siano sempre visualizzate in minuscolo. A tal fine, è sufficiente inserire:
SELEZIONARE LCASE(email) FROM clienti;
4. SOTTOSCRIZIONE
La funzione SUBSTRING viene utilizzata per estrarre una porzione di una stringa, consentendo di estrarre rapidamente parti specifiche di dati da una stringa più grande. Un professionista dei dati potrebbe usare la funzione SUBSTRING per estrarre solo il numero di telefono di un cliente da una stringa contenente il numero di telefono, l'indirizzo e l'e-mail. Il risultato sarebbe il seguente:
SELECT SUBSTRING(numero_di_telefono, 1, 10) FROM clienti;
5. MID
Come SUBSTRING, la funzione MID viene utilizzata per estrarre solo una parte di una stringa e lo fa specificando l'inizio e la lunghezza.
MID è stato creato per VB6 (Visual Basic 6.0), ma è ancora comunemente usato in SQL.
Entrambe le funzioni possono essere utilizzate per estrarre rapidamente dati specifici da una stringa più grande. Per utilizzare MID per estrarre gli indirizzi dei clienti, si deve inserire quanto segue:
SELECT MID(indirizzo, 10, 15) FROM clienti;
6. SOSTITUIRE
La funzione REPLACE viene utilizzata per sostituire tutte le occorrenze di una sottostringa con un'altra stringa, utile quando si devono ripulire dati mal formattati o inseriti in modo non standard.
Supponiamo che l'indirizzo di un cliente includa un'abbreviazione da sostituire con il nome completo. È possibile utilizzare la funzione REPLACE per sostituire rapidamente tutte le occorrenze dell'abbreviazione con il nome completo. Il risultato sarebbe il seguente:
SELECT REPLACE(indirizzo, 'St.', 'Via') FROM clienti;
Funzioni aggregate in SQL
Le funzioni di aggregazione possono calcolare rapidamente il valore aggregato di un insieme di valori, come la somma di un insieme di numeri o la media di un insieme di numeri.
Le funzioni di aggregazione sono utili per determinare il valore totale di un insieme di dati, come il fatturato totale di un'azienda o il costo totale dei prodotti venduti.
7. CONTO
La funzione COUNT viene spesso utilizzata per determinare il numero di record di una tabella e il numero di record che soddisfano determinati criteri. Con COUNT è possibile determinare la dimensione e l'estensione di un set di dati e verificare se è completo e accurato.
Un professionista dei dati potrebbe utilizzare la funzione COUNT per determinare il numero di clienti in una tabella clienti o il numero di prodotti in una tabella prodotti. Per contare il numero di clienti, si deve immettere quanto segue:
SELEZIONA COUNT(*) FROM clienti;
8. SUM
La funzione SOMMA viene utilizzata per calcolare la somma di un insieme di valori. Un professionista dei dati potrebbe utilizzare la funzione SOMMA per calcolare il fatturato totale di un'azienda o il costo totale dei prodotti venduti. Si inserisce:
SELEZIONA SOMMA(ricavi) DA ORDINI;
9. AVG
La funzione AVG viene utilizzata per calcolare la media di un insieme di valori. È una funzione semplice ma potente che si rivela utile. Un'azienda potrebbe aver bisogno di cercare il proprio fatturato medio o il costo medio dei prodotti venduti con il seguente risultato:
SELECT AVG(costo_merce_venduta) FROM ordini;
10. MIN
La funzione MIN viene utilizzata per trovare il valore minimo in un insieme di valori, come il ricavo annuale più basso nella storia di un'organizzazione o il costo più basso dei prodotti venduti con questa query:
SELEZIONARE MIN(ricavi) DA ORDINI;
11. MAX
La funzione MAX viene utilizzata per trovare il valore massimo in un insieme di valori, come ad esempio i ricavi più alti di un'azienda o il costo più alto dei prodotti venduti. La query avrebbe il seguente aspetto:
SELEZIONARE MAX(costo_merce_venduta) DA ORDINI;
12. GRUPPO_CONCAT
La funzione GROUP_CONCAT viene utilizzata per combinare i valori di un campo o di un'espressione in un gruppo di record (righe) in un'unica stringa.
A differenza della funzione CONCAT, che combina due o più stringhe in un'unica stringa, la funzione GROUP_CONCAT combina i valori di un campo o di un'espressione in un gruppo di record (righe) in un'unica stringa con i valori separati da virgola. In questo modo i professionisti dei dati possono combinare rapidamente più dati di un grande insieme di dati in un unico valore.
Un professionista dei dati potrebbe usare la funzione GROUP_CONCAT per combinare i nomi di tutti i clienti di una tabella clienti in un'unica stringa o per combinare i nomi di tutti i prodotti di una tabella prodotti in un'unica stringa. Per combinare tutti i prodotti in un'unica stringa, inserire:
SELEZIONARE GROUP_CONCAT(nome) FROM prodotti;
Gestione dei dati con le funzioni SQL
Per padroneggiare davvero la gestione dei database SQL, è necessaria una piattaforma di integrazione dei database. Senza una piattaforma di integrazione, la gestione dei dati da più fonti può richiedere molto tempo, essere soggetta a errori e portare a dati incoerenti tra i vari sistemi.
L'integrazione dei dati è fondamentale per integrare in modo efficiente i dati provenienti da varie fonti, automatizzare i processi ETL e garantire che i dati siano aggiornati e coerenti in tutti i sistemi.
Se siete alla ricerca di ulteriori indicazioni sull'integrazione dei dati, consultate The Ultimate Guide to Data Integration. Questo e-book completo copre le basi dell'integrazione dei dati e fornisce consigli pratici ai professionisti dei dati.