Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Join di 2 Tabelle | Unione di Tabelle
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
SQL Intermedio

bookJoin di 2 Tabelle

Abbiamo attirato l'attenzione di un'azienda che possiede un piccolo negozio online. Dispongono di 2 tabelle correlate tra loro. La prima tabella contiene informazioni sui prodotti venduti nel negozio online.

La seconda tabella contiene le categorie di prodotti presenti sul sito web, insieme a una breve descrizione per ciascuna categoria.

Il nostro primo compito è unire queste due tabelle per determinare quanti prodotti ci sono in ciascuna categoria. Utilizzeremo un'istruzione JOIN per raggiungere questo obiettivo.

Prima di procedere con il compito, analizziamo cosa sia un'istruzione JOIN e come funziona.

Per unire due tabelle, è necessario che condividano una colonna in comune. Vediamo come funziona JOIN utilizzando le tabelle employees e department. La loro colonna in comune è employees.department e departments.name.

Note
Nota

Quando si scrivono colonne da queste tabelle, iniziare con il nome della tabella, aggiungere un punto e poi il nome della colonna. Questo aiuta a mantenere il codice chiaro, soprattutto quando le tabelle hanno colonne con lo stesso nome. Indica a SQL esattamente a quale tabella e colonna ci si riferisce.

Ecco il compito di recuperare il salario totale per i dipendenti in ciascun tipo di dipartimento (tech/non-tech).

La query per svolgere questo compito sarà simile alla seguente:

1234
SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
copy

Analizziamo come abbiamo utilizzato JOIN nella nostra query:

  1. Nella parte SELECT, elenchiamo le colonne desiderate da entrambe le tabelle, assicurandoci di includere il nome della tabella per chiarezza;
  2. Nella parte JOIN, specifichiamo la tabella da unire e la colonna comune che le collega. In questo caso, sono employees.department e department.name;
  3. Successivamente, raggruppiamo i dati per type per calcolare il totale degli stipendi utilizzando la funzione SUM().

Se questo sembra complesso, ecco una semplice sintassi per utilizzare JOIN:

SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
Note
Nota

A differenza della clausola UNION, l'istruzione JOIN consente di combinare intere tabelle, non solo le colonne che hanno in comune. Inoltre, con JOIN non è necessario utilizzare sottoquery come avviene con UNION.

Compito

Swipe to start coding

È necessario unire le due tabelle: category e product. Le colonne comuni tra queste due tabelle sono product.category_id e category.id.

Il tuo compito è trovare la quantità totale di prodotti in ciascuna categoria. Per farlo, devi calcolare la somma della colonna product.amount.

Utilizza l'alias total_amount per questa colonna. Alla fine della query, ordina il risultato in base alla colonna total_amount in ordine crescente.

Nella risposta, dovresti avere 2 colonne: category.name e total.amount.

Istruzioni sintetiche

  • Recupera la colonna category.name e la somma della colonna product.amount dalla tabella product.
  • Assegna l'alias total_amount alla seconda colonna.
  • Unisci la tabella category utilizzando una clausola JOIN.
  • Collega le tabelle sulla colonna comune product.category_id = category.id.
  • Raggruppa i risultati per category.name.
  • Ordina i risultati per total_amount.

Soluzione

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 1
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Suggested prompts:

Can you explain the different types of SQL JOINs?

How do I know which column to use for joining tables?

Can you show an example using the products and categories tables?

close

bookJoin di 2 Tabelle

Scorri per mostrare il menu

Abbiamo attirato l'attenzione di un'azienda che possiede un piccolo negozio online. Dispongono di 2 tabelle correlate tra loro. La prima tabella contiene informazioni sui prodotti venduti nel negozio online.

La seconda tabella contiene le categorie di prodotti presenti sul sito web, insieme a una breve descrizione per ciascuna categoria.

Il nostro primo compito è unire queste due tabelle per determinare quanti prodotti ci sono in ciascuna categoria. Utilizzeremo un'istruzione JOIN per raggiungere questo obiettivo.

Prima di procedere con il compito, analizziamo cosa sia un'istruzione JOIN e come funziona.

Per unire due tabelle, è necessario che condividano una colonna in comune. Vediamo come funziona JOIN utilizzando le tabelle employees e department. La loro colonna in comune è employees.department e departments.name.

Note
Nota

Quando si scrivono colonne da queste tabelle, iniziare con il nome della tabella, aggiungere un punto e poi il nome della colonna. Questo aiuta a mantenere il codice chiaro, soprattutto quando le tabelle hanno colonne con lo stesso nome. Indica a SQL esattamente a quale tabella e colonna ci si riferisce.

Ecco il compito di recuperare il salario totale per i dipendenti in ciascun tipo di dipartimento (tech/non-tech).

La query per svolgere questo compito sarà simile alla seguente:

1234
SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
copy

Analizziamo come abbiamo utilizzato JOIN nella nostra query:

  1. Nella parte SELECT, elenchiamo le colonne desiderate da entrambe le tabelle, assicurandoci di includere il nome della tabella per chiarezza;
  2. Nella parte JOIN, specifichiamo la tabella da unire e la colonna comune che le collega. In questo caso, sono employees.department e department.name;
  3. Successivamente, raggruppiamo i dati per type per calcolare il totale degli stipendi utilizzando la funzione SUM().

Se questo sembra complesso, ecco una semplice sintassi per utilizzare JOIN:

SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
Note
Nota

A differenza della clausola UNION, l'istruzione JOIN consente di combinare intere tabelle, non solo le colonne che hanno in comune. Inoltre, con JOIN non è necessario utilizzare sottoquery come avviene con UNION.

Compito

Swipe to start coding

È necessario unire le due tabelle: category e product. Le colonne comuni tra queste due tabelle sono product.category_id e category.id.

Il tuo compito è trovare la quantità totale di prodotti in ciascuna categoria. Per farlo, devi calcolare la somma della colonna product.amount.

Utilizza l'alias total_amount per questa colonna. Alla fine della query, ordina il risultato in base alla colonna total_amount in ordine crescente.

Nella risposta, dovresti avere 2 colonne: category.name e total.amount.

Istruzioni sintetiche

  • Recupera la colonna category.name e la somma della colonna product.amount dalla tabella product.
  • Assegna l'alias total_amount alla seconda colonna.
  • Unisci la tabella category utilizzando una clausola JOIN.
  • Collega le tabelle sulla colonna comune product.category_id = category.id.
  • Raggruppa i risultati per category.name.
  • Ordina i risultati per total_amount.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 1
single

single

some-alt