Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Unisci 2 Tabelle | Unire le Tabelle
SQL Intermedio

Scorri per mostrare il menu

book
Unisci 2 Tabelle

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

Ecco come appare la tabella product:

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

Ecco come appare la tabella category:

Il nostro primo compito è unire queste due tabelle per scoprire quanti prodotti ci sono in ciascuna categoria. Useremo un'istruzione JOIN per ottenere questo risultato.

Prima di immergerci nel compito, cerchiamo di capire cos'è un'istruzione JOIN e come funziona.

Per unire due tabelle, devono condividere una colonna comune. Vediamo come funziona JOIN utilizzando le tabelle employees e department. La loro colonna comune è employees.department e departments.name.

Nota

Quando si scrivono colonne da queste tabelle, inizia con il nome della tabella, aggiungi un punto, e poi il nome della colonna. Questo aiuta a mantenere il codice chiaro, specialmente quando le tabelle hanno colonne con lo stesso nome. Indica esattamente a SQL quale tabella e colonna intendi.

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 a questa:

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 che vogliamo 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. Qui, sono employees.department e department.name;

  3. Poi raggruppiamo i dati per type per calcolare il salario totale usando la funzione SUM().

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

sql

Nota

A differenza della clausola UNION, l'istruzione JOIN ci permette di combinare intere tabelle, non solo le colonne che condividono. Inoltre, con JOIN, non c'è bisogno di sottoquery come con UNION.

Compito

Swipe to start coding

Devi unire le due tabelle: category e product. Le colonne comuni per queste due tabelle sono product.category_id e category.id.

Il tuo compito è trovare la quantità totale di prodotti in ogni categoria. Per fare ciò, devi calcolare la somma della colonna product.amount.

Usa l'alias total_amount per questa colonna. Alla fine della tua query, ordina il risultato per la colonna total_amount in ordine crescente.

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

Istruzioni Brevi

  • 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 usando un'istruzione JOIN.
  • Abbina 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

Chieda ad AI

expand
ChatGPT

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

book
Unisci 2 Tabelle

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

Ecco come appare la tabella product:

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

Ecco come appare la tabella category:

Il nostro primo compito è unire queste due tabelle per scoprire quanti prodotti ci sono in ciascuna categoria. Useremo un'istruzione JOIN per ottenere questo risultato.

Prima di immergerci nel compito, cerchiamo di capire cos'è un'istruzione JOIN e come funziona.

Per unire due tabelle, devono condividere una colonna comune. Vediamo come funziona JOIN utilizzando le tabelle employees e department. La loro colonna comune è employees.department e departments.name.

Nota

Quando si scrivono colonne da queste tabelle, inizia con il nome della tabella, aggiungi un punto, e poi il nome della colonna. Questo aiuta a mantenere il codice chiaro, specialmente quando le tabelle hanno colonne con lo stesso nome. Indica esattamente a SQL quale tabella e colonna intendi.

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 a questa:

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 che vogliamo 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. Qui, sono employees.department e department.name;

  3. Poi raggruppiamo i dati per type per calcolare il salario totale usando la funzione SUM().

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

sql

Nota

A differenza della clausola UNION, l'istruzione JOIN ci permette di combinare intere tabelle, non solo le colonne che condividono. Inoltre, con JOIN, non c'è bisogno di sottoquery come con UNION.

Compito

Swipe to start coding

Devi unire le due tabelle: category e product. Le colonne comuni per queste due tabelle sono product.category_id e category.id.

Il tuo compito è trovare la quantità totale di prodotti in ogni categoria. Per fare ciò, devi calcolare la somma della colonna product.amount.

Usa l'alias total_amount per questa colonna. Alla fine della tua query, ordina il risultato per la colonna total_amount in ordine crescente.

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

Istruzioni Brevi

  • 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 usando un'istruzione JOIN.
  • Abbina 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
Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Siamo spiacenti che qualcosa sia andato storto. Cosa è successo?
some-alt