Vai al contenuto
eLearner.app
Modulo 1 · Lezione 2 di 42/57 nel corso~10 min
Lezioni del modulo (2/4)

SELECT … FROM

La query più semplice in SQL si chiama SELECT ed estrae righe da una tabella. È il "Hello, world" del linguaggio, e la userai praticamente in ogni query che scriverai per il resto della tua vita. La sintassi minima è:

SQL
SELECT <colonne>
FROM   <tabella>;

Letta in italiano: "prendi queste colonne, dalla tabella indicata". Il motore SQL scandisce la tabella riga per riga e per ognuna restituisce solo le colonne richieste.

Tutte le colonne, o solo alcune

  • SELECT * restituisce tutte le colonne della tabella. È comodo per esplorare un dataset nuovo, ma in codice "vero" si evita: se domani aggiungi una colonna alla tabella, la query restituirà silenziosamente più dati.
  • SELECT col1, col2 restituisce solo le colonne elencate, nell'ordine in cui le scrivi. Cambiare l'ordine cambia l'output.
SQL
-- Tutto, comodo per esplorare:
SELECT * FROM employees;

-- Solo le colonne che servono, nell'ordine deciso da te:
SELECT last_name, first_name, salary
FROM employees;

Spazi, indentazione, punto e virgola

SQL è tollerante con la formattazione: queste tre query sono identiche per il motore:

SQL
SELECT first_name, last_name FROM employees;

SELECT first_name,last_name FROM employees;

SELECT
  first_name,
  last_name
FROM employees;

La terza forma è quella che vedrai più spesso in codice professionale: una colonna per riga rende il diff più leggibile quando aggiungi o togli campi.

Prova tu

Esercizio#sql.m1.l2.e1
Tentativi: 0Caricamento…

Estrai il nome (first_name) e il cognome (last_name) di tutti i dipendenti, in quest'ordine.

Caricamento editor…
Mostra suggerimento

Devi specificare le due colonne che ti interessano fra SELECT e FROM, separate da una virgola.

Soluzione disponibile dopo 3 tentativi

Esercizio di ripasso

Esercizio#sql.m1.l2.e2
Tentativi: 0Caricamento…

Estrai email, last_name e salary dei dipendenti (in quest'ordine esatto delle colonne).

Caricamento editor…
Mostra suggerimento

L'ordine delle colonne nel risultato segue l'ordine in cui le elenchi dopo SELECT.

Soluzione disponibile dopo 3 tentativi