SQL (Structured Query Language) è un linguaggio di programmazione progettato per gestire i dati in un database relazionale. SQL ha una varietà di funzioni che consentono ai suoi utenti di leggere, manipolare e modificare i dati. Sebbene SQL sia comunemente utilizzato dagli ingegneri nello sviluppo del software, è anche popolare tra gli analisti di dati per alcuni motivi:
- È semanticamente facile da capire e da imparare.
- Poiché può essere utilizzato per accedere direttamente a grandi quantità di dati dove sono memorizzati, gli analisti non devono copiare i dati in altre applicazioni.
- Rispetto agli strumenti di fogli di calcolo, l’analisi dei dati fatta in SQL è facile da controllare e replicare. Per gli analisti, questo significa non dover più cercare la cella con l’errore di battitura nella formula.
Esempio SELECT*
La seguente istruzione SQL seleziona tutte le colonne dalla tabella Sales:
SELECT * FROM Sales;
Selezione Colonne Specifiche
SELECT year, month FROM Sales;
Rinominare Colonne
SELECT west AS "West Region" FROM Sales;
Clausola LIMIT
La clausola LIMIT viene utilizzata per specificare il numero di record da restituire.
SELECT * FROM Sales LIMIT 100;
Clausola WHERE
La clausola WHERE viene utilizzata per filtrare i record. Viene utilizzata per estrarre solo i record che soddisfano una condizione specificata.
SELECT * FROM Sales WHERE Country = "Canada";
Operatori di Confronto su Dati Numerici
Il modo più semplice per filtrare i dati è utilizzare gli operatori di confronto. Il modo più semplice per capirli è guardare una lista di essi:
- Uguale a: =
- Diverso da: !=
- Maggiore di: >
- Minore di: <
- Maggiore o uguale a: >=
- Minore o uguale a: <=
Esempi:
SELECT * FROM Sales WHERE City = "Kolkata"; SELECT * FROM Sales WHERE City != "Kolkata"; SELECT * FROM Sales WHERE Month > "January"; SELECT * FROM Sales WHERE SaleAmount < 50000;
È possibile eseguire operazioni aritmetiche in SQL utilizzando gli stessi operatori che si usano in Excel: +, -, *, /. Tuttavia, in SQL è possibile eseguire operazioni aritmetiche solo tra colonne o valori in una determinata riga. Per chiarire, è possibile sommare valori in più colonne della stessa riga utilizzando +. Se si desidera sommare valori su più righe, è necessario utilizzare funzioni di aggregazione.
Esempi:
SELECT year, month, west, south FROM Sales; SELECT year, month, west, south, west + south AS new_column FROM Sales; SELECT year, month, west, south, west + south AS south_hsc, (west + south)/2 AS south_west_avg FROM Sales;
CREATE TABLE
L’istruzione CREATE TABLE viene utilizzata per creare una nuova tabella in un database.
CREATE TABLE Personal ( PersonID int, LastName varchar(255), FirstName varchar(255), Address varchar(255), City varchar(255) );
INSERT INTO
L’istruzione INSERT INTO viene utilizzata per inserire nuovi record in una tabella.
- Specificare sia i nomi delle colonne che i valori da inserire:
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);
- Se si stanno aggiungendo valori per tutte le colonne di una tabella, non è necessario specificare i nomi delle colonne nella query SQL:
INSERT INTO table_name VALUES (value1, value2, value3, ...);
Cos’è un Valore NULL?
Un campo con un valore NULL è un campo senza valore. Se un campo in una tabella è opzionale, è possibile inserire un nuovo record o aggiornare un record senza aggiungere un valore a questo campo. Quindi, il campo verrà salvato con un valore NULL.
Come Testare i Valori NULL?
Non è possibile testare i valori NULL con operatori di confronto, come =, <, o >. Dovremo invece utilizzare gli operatori IS NULL e IS NOT NULL.
IS NULL
L’operatore IS NULL viene utilizzato per testare valori vuoti (valori NULL).
SELECT CustomerName, ContactName, Address FROM Sales WHERE Address IS NULL;
IS NOT NULL
L’operatore IS NOT NULL viene utilizzato per testare valori non vuoti (valori NOT NULL).
SELECT CustomerName, ContactName, Address FROM Sales WHERE Address IS NOT NULL;
Istruzione UPDATE
L’istruzione UPDATE viene utilizzata per modificare i record esistenti in una tabella.
UPDATE Sales SET ContactName = "Alan", City = "Goa" WHERE CustomerID = 1;
Aggiornare Più Record
UPDATE Sales SET PostalCode = 00000 WHERE Country = "India";
Nota: Fare attenzione quando si aggiornano i record, quando si omette la clausola WHERE, TUTTI i record verranno aggiornati!
Istruzione DELETE
L’istruzione DELETE viene utilizzata per eliminare i record esistenti in una tabella.
DELETE FROM Sales WHERE CustomerName = "Bob";
Eliminare Tutti i Record
È possibile eliminare tutte le righe in una tabella senza eliminare la tabella. Ciò significa che la struttura della tabella, gli attributi e gli indici rimarranno intatti:
DELETE FROM table_name;
Alias
Gli alias vengono utilizzati per dare un nome temporaneo ad una tabella o ad una colonna all’interno di una tabella stessa. Quest’ultimi sono spesso utilizzati per rendere i nomi delle colonne più leggibili. Inoltre un alias ha una vita limitata ed esisterà solo per la durata di una query. Un alias è creato richiamando la parola chiave AS.
Esempio di Alias per Colonne
SELECT column_name AS alias_name FROM table_name;
Esempio di Alias per Tabelle
SELECT column_name(s) FROM table_name AS alias_name;
C’è ancora molto da scoprire! La seconda parte di questo articolo è già disponibile. Continua a leggere cliccando sul link qui sotto:
Vai alla seconda parte