Liity 2 Taulukkoon
Olemme saaneet huomion yritykseltä, joka omistaa pienen verkkokaupan. Heillä on 2 taulukkoa, jotka liittyvät toisiinsa. Ensimmäinen taulukko sisältää tietoa verkkokaupassa myydyistä tuotteista.
Tältä product-taulukko näyttää:
Toinen taulukko sisältää verkkosivuston tuotekategoriat sekä lyhyen kuvauksen jokaisesta kategoriasta.
Tältä category-taulukko näyttää:
Ensimmäinen tehtävämme on liittää nämä kaksi taulukkoa selvittääksemme, kuinka monta tuotetta on kussakin kategoriassa. Käytämme tähän JOIN-lausetta.
Ennen kuin sukellamme tehtävään, ymmärretään, mitä JOIN-lause on ja miten se toimii.
Liittääksesi kaksi taulukkoa, niiden täytyy jakaa yhteinen sarake. Katsotaanpa, miten JOIN toimii käyttämällä employees- ja department-taulukoita. Niiden yhteinen sarake on employees.department ja departments.name.
Huomautus
Kun kirjoitat sarakkeita näistä taulukoista, aloita taulukon nimellä, lisää piste ja sitten sarakkeen nimi. Tämä auttaa pitämään koodin selkeänä, erityisesti kun taulukoissa on samoja sarakenimiä. Se kertoo SQL:lle tarkalleen, mitä taulukkoa ja saraketta tarkoitat.
Tässä on tehtävä, jossa haetaan työntekijöiden kokonaispalkka kussakin osastotyypissä (tech/non-tech).
Tämän tehtävän suorittava kysely näyttää tältä:
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Käydään läpi, miten käytimme JOIN-komentoa kyselyssämme:
SELECT-osassa luettelemme sarakkeet, jotka haluamme molemmista tauluista, varmistaen, että sisällytämme taulun nimen selkeyden vuoksi;JOIN-osassa määrittelemme taulun, johon yhdistetään ja yhteisen sarakkeen, joka yhdistää ne. Tässä tapauksessa se onemployees.departmentjadepartment.name;- Sitten ryhmittelemme tiedot
type-kentän mukaan laskeaksemme kokonaispalkan käyttämälläSUM()-funktiota.
Jos tämä vaikuttaa monimutkaiselta, tässä on yksinkertainen syntaksi JOIN-komennon käyttöön:
SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
Huomautus
Toisin kuin
UNION-lauseke,JOIN-lause mahdollistaa koko taulukoiden yhdistämisen, ei vain niiden jakamia sarakkeita. LisäksiJOIN-lauseessa ei tarvita alikyselyjä kutenUNION-lauseessa.
Swipe to start coding
Sinun täytyy yhdistää kaksi taulukkoa: category ja product. Näiden kahden taulukon yhteiset sarakkeet ovat product.category_id ja category.id.
Tehtäväsi on löytää tuotteiden kokonaismäärä jokaisessa kategoriassa. Tätä varten sinun täytyy laskea yhteen product.amount-sarakkeen arvot.
Käytä tälle sarakkeelle aliasia total_amount.
Kyselyn lopussa lajittele tulos total_amount-sarakkeen mukaan nousevassa järjestyksessä.
Vastauksessa pitäisi olla 2 saraketta: category.name ja total.amount.
Lyhyet ohjeet
- Hae
category.name-sarake japroduct.amount-sarakkeen summaproduct-taulukosta. - Anna toiselle sarakkeelle alias
total_amount. - Yhdistä
category-taulukko käyttämälläJOIN-lausetta. - Yhdistä taulukot yhteisen sarakkeen
product.category_id = category.idperusteella. - Ryhmittele tulokset
category.nameperusteella. - Lajittele tulokset
total_amountmukaan.
Ratkaisu
Kiitos palautteestasi!
single
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 4
Liity 2 Taulukkoon
Pyyhkäise näyttääksesi valikon
Olemme saaneet huomion yritykseltä, joka omistaa pienen verkkokaupan. Heillä on 2 taulukkoa, jotka liittyvät toisiinsa. Ensimmäinen taulukko sisältää tietoa verkkokaupassa myydyistä tuotteista.
Tältä product-taulukko näyttää:
Toinen taulukko sisältää verkkosivuston tuotekategoriat sekä lyhyen kuvauksen jokaisesta kategoriasta.
Tältä category-taulukko näyttää:
Ensimmäinen tehtävämme on liittää nämä kaksi taulukkoa selvittääksemme, kuinka monta tuotetta on kussakin kategoriassa. Käytämme tähän JOIN-lausetta.
Ennen kuin sukellamme tehtävään, ymmärretään, mitä JOIN-lause on ja miten se toimii.
Liittääksesi kaksi taulukkoa, niiden täytyy jakaa yhteinen sarake. Katsotaanpa, miten JOIN toimii käyttämällä employees- ja department-taulukoita. Niiden yhteinen sarake on employees.department ja departments.name.
Huomautus
Kun kirjoitat sarakkeita näistä taulukoista, aloita taulukon nimellä, lisää piste ja sitten sarakkeen nimi. Tämä auttaa pitämään koodin selkeänä, erityisesti kun taulukoissa on samoja sarakenimiä. Se kertoo SQL:lle tarkalleen, mitä taulukkoa ja saraketta tarkoitat.
Tässä on tehtävä, jossa haetaan työntekijöiden kokonaispalkka kussakin osastotyypissä (tech/non-tech).
Tämän tehtävän suorittava kysely näyttää tältä:
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Käydään läpi, miten käytimme JOIN-komentoa kyselyssämme:
SELECT-osassa luettelemme sarakkeet, jotka haluamme molemmista tauluista, varmistaen, että sisällytämme taulun nimen selkeyden vuoksi;JOIN-osassa määrittelemme taulun, johon yhdistetään ja yhteisen sarakkeen, joka yhdistää ne. Tässä tapauksessa se onemployees.departmentjadepartment.name;- Sitten ryhmittelemme tiedot
type-kentän mukaan laskeaksemme kokonaispalkan käyttämälläSUM()-funktiota.
Jos tämä vaikuttaa monimutkaiselta, tässä on yksinkertainen syntaksi JOIN-komennon käyttöön:
SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
Huomautus
Toisin kuin
UNION-lauseke,JOIN-lause mahdollistaa koko taulukoiden yhdistämisen, ei vain niiden jakamia sarakkeita. LisäksiJOIN-lauseessa ei tarvita alikyselyjä kutenUNION-lauseessa.
Swipe to start coding
Sinun täytyy yhdistää kaksi taulukkoa: category ja product. Näiden kahden taulukon yhteiset sarakkeet ovat product.category_id ja category.id.
Tehtäväsi on löytää tuotteiden kokonaismäärä jokaisessa kategoriassa. Tätä varten sinun täytyy laskea yhteen product.amount-sarakkeen arvot.
Käytä tälle sarakkeelle aliasia total_amount.
Kyselyn lopussa lajittele tulos total_amount-sarakkeen mukaan nousevassa järjestyksessä.
Vastauksessa pitäisi olla 2 saraketta: category.name ja total.amount.
Lyhyet ohjeet
- Hae
category.name-sarake japroduct.amount-sarakkeen summaproduct-taulukosta. - Anna toiselle sarakkeelle alias
total_amount. - Yhdistä
category-taulukko käyttämälläJOIN-lausetta. - Yhdistä taulukot yhteisen sarakkeen
product.category_id = category.idperusteella. - Ryhmittele tulokset
category.nameperusteella. - Lajittele tulokset
total_amountmukaan.
Ratkaisu
Kiitos palautteestasi!
single