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

I comandi SQL più importanti

In questo articolo esploreremo i comandi SQL più comuni che tutti dovrebbero conoscere, tra cui SELECT, INSERT, WHERE e altri ancora. Inoltre, forniremo esempi di utilizzo di ciascun comando. Siete pronti a tuffarvi nel mondo dei database?

SQL, o Structured Query Language, è un linguaggio di programmazione progettato appositamente per interagire con i database. Consente di manipolare i dati dei database in vari modi, ad esempio modificandoli, cancellandoli, aggiungendoli o semplicemente estraendoli e inserendoli in un report.

SQL è utilizzato da progettisti, sviluppatori e amministratori di database, ma anche da analisti di dati e scienziati per estrarre e analizzare i dati da grandi database relazionali.

SQL ha più di 40 anni, ma è ancora oggi molto utilizzato. Perché è così popolare? I database sono essenziali per molte aziende e SQL è uno strumento perfetto per comunicare con essi. È molto efficiente, ottimizzato e flessibile. Inoltre, SQL ha una sintassi semplice, che lo rende facile da imparare e da usare. Non è necessario essere programmatori per capire cosa succede in una query.

Queste caratteristiche hanno reso l'SQL un linguaggio popolare per la gestione e l'analisi dei dati, e probabilmente lo sarà ancora per molti anni. Certo, l'SQL richiede ancora un po' di tempo per essere appreso, ma se seguite i nostri consigli per i principianti, il processo sarà interessante e piacevole.

Comandi SQL da conoscere

Imparare i comandi SQL più comuni è un ottimo modo per iniziare il vostro viaggio nel mondo dei database e dell'SQL. Il modo migliore per comprendere appieno le nozioni appena apprese è metterle in pratica! Per questo motivo siamo lieti di offrirvi il formidabile SQL from A to Z che potrete iniziare subito dopo aver letto questo articolo!

Questa serie di corsi completamente interattivi contiene tutte le informazioni essenziali che ogni specialista di SQL deve conoscere. Non solo imparerete comandi importanti, ma li proverete anche in scenari realistici.

Dopo aver completato il percorso, saprete come creare query di base e avanzate, collegare tabelle, creare report SQL e persino utilizzare le funzioni della finestra.

Cominciamo con i comandi SQL più importanti.

SELEZIONARE

L'istruzione SELECT è spesso descritta come il comando SQL più importante. La maggior parte delle query che scriverete come studenti o specialisti di SQL inizieranno con questo comando.

SELECT è utilizzato per recuperare i dati da un database. La sintassi dell'istruzione SELECT è la seguente:

SELECT column1, column2, ... 
FROM table_name;

column1, column2, ... sono i nomi delle colonne da cui si vogliono recuperare i dati. table_name è il nome della tabella da cui si desidera recuperare i dati.

Si può anche usare il simbolo * per recuperare i dati da tutte le colonne di una tabella. Ad esempio, se si desidera recuperare tutti i dati da una tabella denominata customerssi utilizza la seguente istruzione SQL:

SELECT * 
FROM customers;

Per vedere altri esempi di SELECT, consultate il nostro articolo Come si scrive un'istruzione SELECT in SQL?

DOVE

Questo comando SQL consente di filtrare i dati selezionati. La clausola WHERE segue la clausola FROM in un'istruzione SELECT, UPDATE, o DELETE. Specifica una o più condizioni che devono essere soddisfatte affinché l'istruzione venga eseguita. Spesso è accompagnata da uno o più operatori logici o di confronto.

La sintassi di base di una clausola WHERE è:

SELECT column1, column2, ...
FROM table_name
WHERE condition;

In questa sintassi, column1, column2, sono i nomi delle colonne che memorizzano i dati desiderati; table_name è il nome della tabella che contiene i dati. Il parametro condition specifica la condizione che deve essere soddisfatta per l'esecuzione dell'istruzione.

Il parametro condizione può includere uno o più operatori logici, come AND, OR e NOT; può anche avere uno o più operatori di confronto, come è uguale a (=), non è uguale (<>), minore di (<), maggiore di (>), minore o uguale a (<=) e maggiore o uguale a (>=). È inoltre possibile utilizzare funzioni e subquery per creare condizioni più complesse.

Vediamo un semplice esempio. Supponiamo di avere una tabella denominata employees con le colonne id, name, age e department. Si desidera recuperare le informazioni relative a tutti i dipendenti che hanno meno di 30 anni. A tale scopo, si può utilizzare la seguente istruzione SQL:

SELECT *
FROM employees
WHERE age < 30;

In questo esempio, la clausola WHERE è utilizzata per specificare la condizione che solo i dipendenti con un'età inferiore a 30 anni saranno inclusi nel set di risultati. Ciò significa che il risultato di questa query sarà costituito da tutte le righe della tabella employees in cui il valore della colonna età è inferiore a 30 anni.

La padronanza di WHERE è essenziale per chiunque voglia utilizzare SQL. La nostra guida completa al comando WHERE contiene ulteriori informazioni ed esempi.

INSERZIONE

L'istruzione INSERT è uno dei comandi SQL che consentono di modificare i dati nelle tabelle del database; aggiunge nuovi dati a una tabella. La sintassi dell'istruzione INSERT è la seguente:

INSERT INTO table_name (column1, column2, ...) 
VALUES (value1, value2, ...);

Qui, table_name è il nome della tabella, column1, column2, ... sono i nomi delle colonne a cui si desidera aggiungere dati e value1, value2, ... sono i valori che si desidera aggiungere a tali colonne.

Ad esempio, se si vuole aggiungere un nuovo cliente alla tabella customerssi utilizza la seguente istruzione SQL:

INSERT INTO customers (customer_name, customer_email, customer_phone) 
VALUES ('John Doe', 'john.doe@example.com', '123-456-7890');

Per ulteriori informazioni su questo comando SQL, consultare l'articolo Cos'è l'istruzione INSERT in SQL.

AGGIORNAMENTO

L'istruzione UPDATE viene utilizzata per modificare i dati esistenti in un database. La sintassi dell'istruzione UPDATE è la seguente:

UPDATE table_name 
SET column1 = value1, column2 = value2, ... 
WHERE condition;

table_name è il nome della tabella. Poi, column1, column2, ... sono i nomi delle colonne che si desidera modificare e value1, value2, ... sono i nuovi valori che si desidera impostare per tali colonne. Infine, condition è il criterio di selezione delle righe da modificare.

Ad esempio, se si desidera aggiornare l'indirizzo e-mail di un cliente con il nome "John Doe" nella tabella customerssi utilizza la seguente istruzione SQL:

UPDATE customers 
SET customer_email = 'johndoe@example.com' 
WHERE customer_name = 'John Doe';

DELETE

L'istruzione DELETE viene utilizzata per rimuovere i dati da un database. La sintassi dell'istruzione DELETE è la seguente:

DELETE FROM table_name 
WHERE condition;

table_name è il nome della tabella da cui si desidera rimuovere i dati e condition è il criterio di selezione delle righe da rimuovere.

Ad esempio, se si desidera eliminare il cliente con il nome "John Doe" dalla tabella customerssi utilizza la seguente istruzione SQL:

DELETE FROM customers 
WHERE customer_name = 'John Doe';

Esistono altri due comandi SQL che svolgono un lavoro apparentemente simile: TRUNCATE e DROP. Nei colloqui di lavoro in SQL vi verranno spesso chieste le differenze tra questi comandi. Per fortuna abbiamo un articolo dedicato a questo: TRUNCATE TABLE vs. DELETE vs. DROP TABLE: Eliminazione di tabelle e dati in SQL.

ORDINARE PER

La clausola ORDER BY viene utilizzata per ordinare il risultato di un'istruzione SELECT in ordine crescente (A-Z, 1-10) o decrescente (Z-A, 10-1). La sintassi della clausola ORDER BY è la seguente:

SELECT column1, column2, ... 
FROM table_name O
ORDER BY column_name ASC|DESC;

column_name è il nome della colonna per la quale si desidera ordinare l'insieme di risultati e ASC o DESC specifica se l'ordine deve essere ascendente o discendente. Se l'ordine non viene specificato (non vengono scritti né ASCDESC ), l'ordine viene impostato come ascendente per impostazione predefinita.

Ad esempio, se si vogliono recuperare tutti i clienti da una tabella denominata customers e ordinarli in base al loro nome in ordine crescente, si utilizza la seguente istruzione SQL:

SELECT * FROM customers 
ORDER BY customer_name ASC;

Questo comando SQL può essere utilizzato per altri scopi, come l'ordinamento per più colonne. Se volete saperne di più, la nostra Guida dettagliata a ORDER BY è stata scritta proprio per voi.

GRUPPO PER

La clausola GROUP BY viene utilizzata per raggruppare le righe che hanno gli stessi valori in una determinata colonna. Spesso si usa GROUP BY quando il compito è qualcosa come "trovare il prezzo medio per categoria di prodotto". La sintassi della clausola GROUP BY è la seguente:

SELECT column1, column2, ... 
FROM table_name 
GROUP BY column_name;

column_name è il nome della colonna per cui si desidera raggruppare.

Per ottenere il prezzo medio per categoria di prodotto dalla tabella productssi utilizza la seguente istruzione SQL:

SELECT category, AVG(price) 
FROM products 
GROUP BY category;

Per una spiegazione dettagliata e altri esempi, leggete il nostro articolo Cos'è il GROUP BY in SQL?

CONGIUNGI

La clausola JOIN viene utilizzata per combinare le righe di due o più tabelle in base ai valori corrispondenti di una colonna. Esistono diversi tipi di clausole JOIN in SQL, tra cui INNER JOIN, LEFT JOIN, RIGHT JOIN e FULL OUTER JOIN. La sintassi della clausola INNER JOIN è la seguente:

SELECT column1, column2, ... 
FROM table1 
INNER JOIN table2 
ON table1.column_name = table2.column_name;

Qui, table1 e table2 sono i nomi delle tabelle che si desidera unire e column_name è il nome della colonna utilizzata per mettere in relazione le due tabelle.

Ad esempio, se si desidera recuperare tutti gli ordini con i relativi nomi dei clienti da due tabelle denominate orders e customerssi utilizza la seguente istruzione SQL:

SELECT orders.order_id, customers.customer_name 
FROM orders 
INNER JOIN customers 
ON orders.customer_id = customers.customer_id;

Questa query esamina la colonna customer_id in orders e alla colonna customer_id in Clienti. Se queste due colonne hanno valori corrispondenti, la query restituirà l'ID dell'ordine dalla tabella orders insieme alla colonna customer_name della tabella customers della tabella. La corrispondenza degli ID cliente significa che il cliente ha effettuato l'ordine.

Il JOIN è uno dei comandi SQL più complicati e diversi. Per saperne di più, consultate il nostro articolo Quali sono i diversi tipi di JOIN SQL?

CREARE

L'istruzione CREATE viene utilizzata per creare un nuovo oggetto di database, come una tabella, una vista o un indice. La sintassi dell'istruzione CREATE varia a seconda del tipo di oggetto che si vuole creare. Ecco un esempio di come creare una nuova tabella:

CREATE TABLE table_name (
  column1 datatype,
  column2 datatype,
  column3 datatype,
  ...
);

Qui, table_name è il nome della tabella che si vuole creare e column1, column2, column3, ... sono i nomi delle colonne. Il tipo di dati che ogni colonna memorizza (testo, numeri interi, numeri decimali, ecc.) è indicato da datatype.

Ad esempio, se si vuole creare una nuova tabella products con colonne per l'ID prodotto, il nome del prodotto e il prezzo, si utilizzerà la seguente istruzione SQL:

CREATE TABLE products (
  product_id INT PRIMARY KEY,
  product_name VARCHAR(50),
  price DECIMAL(10, 2)
);

Per ulteriori informazioni su PRIMARY KEY e su altri aspetti della creazione di una tabella, consultare l'articolo Come creare la prima tabella in SQL.

ALTER

L'istruzione ALTER viene utilizzata per modificare la struttura di un oggetto di database esistente, come una tabella o una vista. La sintassi dell'istruzione ALTER varia a seconda del tipo di oggetto che si desidera modificare. Ecco un esempio di come aggiungere una nuova colonna a una tabella esistente:

ALTER TABLE table_name 
ADD column_name datatype;

Qui, table_name è il nome della tabella che si vuole modificare, column_name è il nome della nuova colonna e datatype è il tipo di dati della nuova colonna.

Ad esempio, se si desidera aggiungere una nuova colonna denominata description a una tabella esistente denominata productssi utilizza la seguente istruzione SQL:

ALTER TABLE products 
ADD description VARCHAR(100);

Un altro esempio di utilizzo dell'istruzione ALTER è quello di modificare il tipo di dati o la dimensione di una colonna esistente. Ad esempio, se si desidera modificare il tipo di dati della colonna price nella tabella products da DECIMAL(10,2) a DECIMAL(12,2), si utilizza la seguente istruzione SQL:

ALTER TABLE products 
ALTER COLUMN price DECIMAL(12,2);

Prossimamente: Esercitarsi con i comandi SQL più diffusi

L'SQL è un linguaggio potente che consente di gestire, manipolare e recuperare dati dai database. La comprensione dei principali comandi SQL è essenziale per diventare uno sviluppatore di database o un analista di dati di successo. Padroneggiando i comandi SELECT, INSERT, UPDATE, DELETE, WHERE, ORDER BY, GROUP BY, JOIN, CREATE e ALTER, potrete eseguire in modo efficiente un'ampia gamma di operazioni sui database, il che vi aprirà la possibilità di ottenere un lavoro ben retribuito.

Inoltre, la padronanza di questi comandi SQL è un passo fondamentale per esplorare argomenti SQL più avanzati, come le subquery, le funzioni finestra e i join avanzati, necessari per gestire operazioni complesse sui dati.

Ora conoscete la maggior parte dei comandi SQL più importanti. È il momento perfetto per iniziare a mettere in pratica le nuove conoscenze. Per questo, vi consigliamo il SQL Basics corso. Qui imparerete e perfezionerete le vostre conoscenze facendo pratica. Utilizzerete l'editor di codice per eseguire comandi su un database reale e su set di dati reali. Risolverete inoltre problemi realistici creando le vostre query SQL.

Se siete seriamente intenzionati a intraprendere una carriera in SQL, potreste dare un'occhiata al nostro pacchetto All Forever , una raccolta di tutti i corsi SQL attuali e futuri. Non esiste offerta migliore sul mercato. Aumentate le vostre possibilità di successo!