Torna all'elenco degli articoli Articoli
Tempo di lettura: 7 minuti

Imparare l'SQL in 10 minuti

SQL, o Structured Query Language, è un linguaggio di programmazione utilizzato per comunicare con i database. Con SQL è possibile recuperare dati da un database, inserirne di nuovi, aggiornare o cancellare quelli esistenti. È anche possibile modificare la struttura di un database: si possono aggiungere o eliminare tabelle o colonne e modificare le relazioni tra le tabelle.

SQL è uno standard, cioè un riferimento. Per conoscere la storia dello standard SQL, leggete il nostro articolo "La storia degli standard SQL".

In pratica, ogni sistema di database utilizza una propria versione di SQL, solitamente chiamata dialetto SQL. I dialetti SQL sono come i dialetti in senso linguistico: sono reciprocamente comprensibili. Non è necessario conoscere tutti i dialetti SQL; le differenze sono minime.

Quindi non abbiate paura! Con una solida conoscenza di SQL, potete passare facilmente da un dialetto all'altro. Per saperne di più sui dialetti di SQL, leggete il nostro articolo "Cos'è un dialetto di SQL e quale dovreste imparare?".

Volete saperne di più su SQL? Vi consiglio questo eccellente articolo di Kateryna Koidan, "Che cos'è SQL?" Inoltre, date un'occhiata a questo corso best-seller su LearnSQL.it, SQL per principianti. Se siete principianti assoluti, senza esperienza di programmazione o informatica, questo corso è perfetto per voi. Vi fornisce una solida base per iniziare il vostro viaggio verso la trasformazione in un esperto di SQL.

Siete pronti a imparare SQL in 10 minuti?

Che cos'è un database?

In poche parole, un database è un luogo in cui vengono memorizzati tutti i dati. Immaginate di avere un'azienda e di dover memorizzare tutti i dati relativi alla vostra società in un unico posto: dati dei clienti, dati dei prodotti, dati delle vendite, ecc.

Se siete titolari di una piccola impresa, potete farlo con un file Excel o con un quaderno vecchio stile. Ma se gestite un'azienda di dimensioni significative per un certo periodo, non potete gestire centinaia di migliaia o milioni di record con un file Excel. È necessario un database.

Le tabelle e la struttura di un database

Un componente fondamentale della struttura di un database è la tabella. Ogni tabella è utilizzata per memorizzare i dati relativi alle vostre esigenze. Nel nostro esempio precedente, possiamo definire tre tabelle: users, products, e sales.

Una tabella contiene colonne che rappresentano le caratteristiche dei dati memorizzati. Una tabella come users può contenere colonne come first_name, last_name, gender, SSN, ecc.

Una tabella contiene righe con dati relativi a diversi oggetti. Se la tabella users tabella ha 1.000 righe, rappresenta 1.000 utenti diversi, uno per riga.

Convenzionalmente, la prima colonna di una tabella è una colonna chiamata id che contiene numeri per identificare in modo univoco una riga. In alcuni casi, questo valore può essere una chiave di riferimento per altre tabelle. Vediamo il seguente esempio:

Imparare SQL in 10 minuti

Marty McFly (ID 132) ha comprato un hoverboard (ID 1254). Entrambi i valori sono referenziati nella tabella salese le tre tabelle sono quindi correlate. Inoltre, Han Solo ha acquistato un Millennium Falcon e Thanos ha acquistato le Gemme dell'Infinito.

Esempi di query SQL

In SQL si comunica con un database utilizzando delle query. Una query SQL è un comando per ottenere dati da un database o per modificare o eliminare dati da un database.

Le query SQL sono progettate per assomigliare a una frase inglese. Iniziano con una parola chiave di azione (come SELECT o UPDATE) e proseguono con informazioni aggiuntive. Le query SQL possono ottenere tutti i dati da un database, filtrare i dati che soddisfano determinati criteri e persino eseguire calcoli sui dati.

Vediamo alcuni esempi concreti di query SQL.

Ottenere tutti i dati da una tabella

Questa query:

SELECT * FROM table

seleziona tutte le informazioni - tutte le colonne e le righe - dalla tabella specificata. La query inizia con SELECT, per indicare al database che si vogliono selezionare i dati. L'asterisco (*) indica al database che si vogliono selezionare tutte le colonne della tabella. Dopo FROM, si inserisce il nome della tabella da cui si desidera selezionare. Il risultato è che vengono selezionate tutte le righe e tutte le colonne della tabella.

Proviamo a farlo con l'esempio visto in precedenza:

SELECT *
FROM users;

Il risultato è il seguente:

idfirst_namelast_namessnphoneage
132MartyMcFly11111111112345678917
625HanSolo22222222298765432132
9745ThanosDione333333333458712961000

È estremamente semplice, vero? La sintassi SQL è facilmente comprensibile e intuitiva.

Ottenere alcune colonne da una tabella

Vediamo un altro scenario.

A volte non vogliamo vedere tutte le colonne della tabella. Questa query:

SELECT col1, col2 FROM table

ci permette di selezionare solo le colonne che desideriamo. Dopo la clausola SELECT, elenchiamo i nomi delle colonne, separandoli con le virgole. Non c'è limite al numero di colonne; si può elencarne solo una o tutte le colonne della tabella.

In questo esempio, abbiamo bisogno di id, del nome e del cognome dalla tabella users:

SELECT
  id,
  first_name,
  last_name
FROM users;

Il risultato è il seguente:

idfirst_namelast_name
132MartyMcFly
625HanSolo
9745ThanosDione

Come nell'esempio precedente, la query è molto semplice da capire.

Ottenere alcune colonne e alcune righe da una tabella

Ottimo! Ora sappiamo come filtrare le colonne di una tabella.

Che ne dite di filtrare le righe? È facile con la clausola WHERE per impostare una condizione per la query:

SELECT col1, col2 FROM table WHERE x = y;

Immaginiamo di avere un ID utente e di dover fare una ricerca nel nostro database per recuperare l'utente. Possiamo fare così:

La condizione id = 625 dice al database che siamo interessati solo alle righe la cui colonna id ha il valore 625. C'è solo una riga che soddisfa questa condizione:

idfirst_namelast_name
625HanSolo

Questo è estremamente potente! Immaginate di avere un database con milioni di voci. Potete recuperare un utente in pochi millisecondi grazie a una breve query!

L'uguaglianza non è l'unico operatore consentito all'interno di una condizione. Si può usare uno dei seguenti operatori: <, <=, >, o >=, con un numero. Ad esempio, se applichiamo un filtro a ssn in questo modo:

SELECT
  id,
  first_name,
  last_name,
  ssn
FROM users
WHERE ssn >= 222222222;

Si ottiene il seguente risultato:

idfirst_namelast_name
625HanSolo

Con la clausola WHERE si può fare di più. Possiamo creare condizioni multiple, grazie all'operatore AND.

Immaginiamo di voler filtrare i nostri utenti per un intervallo di età. Possiamo farlo facilmente, in questo modo:

SELECT
  id,
  first_name,
  last_name,
  age
FROM users
WHERE age >= 20 AND age <= 40;

Questa query trova gli utenti che hanno 20 anni o più e allo stesso tempo 40 anni o meno. Il risultato è il seguente:

idfirst_namelast_nameage
625HanSolo32

Si noti che possiamo fare la stessa cosa in modo più elegante con l'operatore BETWEEN:

SELECT
  id,
  first_name,
  last_name,
  age
FROM users
WHERE age BETWEEN 20 AND 40;

Piuttosto facile, no? Se non siete ancora convinti, leggete l'articolo di Jill Thornhill, "SQL è difficile da imparare?".

Corsi interattivi da LearnSQL.it

Tutto questo vi ha incuriosito? Volete saperne di più?

Potreste leggere un libro su SQL o guardare le esercitazioni su YouTube. C'è molto materiale eccellente per i principianti.

Tuttavia, siamo onesti. Quando si inizia nel mondo della programmazione, è scoraggiante leggere grandi libri o guardare video inutilmente lunghi. Si perde tempo a passare dal libro o dal video all'editor di codice. Ecco perché vi consiglio vivamente di imparare SQL online con corsi interattivi.

I corsi online di LearnSQL.it sono altamente interattivi. Si apprendono nuovi concetti e li si mette in pratica immediatamente attraverso piccoli esercizi. Vi viene chiesto di scrivere del vero codice SQL e di eseguirlo, e la piattaforma vi dirà se è corretto. Attraverso numerosi esercizi, si diventa più sicuri di sé e si costruisce una solida conoscenza di SQL fino a diventare un esperto di SQL.

La cosa migliore è che non è necessario installare nulla sul computer. Le uniche cose di cui avete bisogno sono una connessione a Internet e un browser web! Guardate la seguente schermata:

Imparare SQL in 10 minuti

Panoramica di un corso SQL interattivo su LearnSQL.it

Incredibile, vero? A sinistra si legge la lezione, a destra si modifica il codice SQL e si vedono i risultati. Non potrebbe essere più semplice!

Imparate l'SQL oggi stesso!

Ecco fatto: potete imparare SQL in 10 minuti! Spero davvero che questo articolo vi abbia motivato ad approfondire i concetti di SQL.

Potete trovare su LearnSQL.it tutti i corsi e le risorse di cui avete bisogno per dare impulso alla vostra carriera in SQL. Se siete dei principianti, iniziate con il corso SQL per principianti corso. Contiene 129 esercizi pratici che vi aiuteranno a imparare tutto ciò di cui avete bisogno per iniziare a lavorare con SQL.

Quindi, cosa state aspettando? Imparate l'SQL e diventate esperti!