Join 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.
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:
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Analizziamo come abbiamo utilizzato JOIN nella nostra query:
- Nella parte
SELECT, elenchiamo le colonne desiderate da entrambe le tabelle, assicurandoci di includere il nome della tabella per chiarezza; - Nella parte
JOIN, specifichiamo la tabella da unire e la colonna comune che le collega. In questo caso, sonoemployees.departmentedepartment.name; - Successivamente, raggruppiamo i dati per
typeper calcolare il totale degli stipendi utilizzando la funzioneSUM().
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
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.
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.namee la somma della colonnaproduct.amountdalla tabellaproduct. - Assegna l'alias
total_amountalla seconda colonna. - Unisci la tabella
categoryutilizzando una clausolaJOIN. - Collega le tabelle sulla colonna comune
product.category_id = category.id. - Raggruppa i risultati per
category.name. - Ordina i risultati per
total_amount.
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
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?
Fantastico!
Completion tasso migliorato a 4
Join 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.
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:
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Analizziamo come abbiamo utilizzato JOIN nella nostra query:
- Nella parte
SELECT, elenchiamo le colonne desiderate da entrambe le tabelle, assicurandoci di includere il nome della tabella per chiarezza; - Nella parte
JOIN, specifichiamo la tabella da unire e la colonna comune che le collega. In questo caso, sonoemployees.departmentedepartment.name; - Successivamente, raggruppiamo i dati per
typeper calcolare il totale degli stipendi utilizzando la funzioneSUM().
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
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.
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.namee la somma della colonnaproduct.amountdalla tabellaproduct. - Assegna l'alias
total_amountalla seconda colonna. - Unisci la tabella
categoryutilizzando una clausolaJOIN. - Collega le tabelle sulla colonna comune
product.category_id = category.id. - Raggruppa i risultati per
category.name. - Ordina i risultati per
total_amount.
Soluzione
Grazie per i tuoi commenti!
single