Startar du här? Den här lektionen är en del av en helhetshandledning om hur du använder SQL för dataanalys. Kolla in början.
I den här lektionen tar vi upp:
- Kommandot RIGHT JOIN
- Praktikproblem
Kommandot RIGHT JOIN
Right joins liknar left joins med skillnaden att de returnerar alla rader från tabellen i RIGHT JOIN
-klausulen och endast matchande rader från tabellen i FROM
-klausulen.
RIGHT JOIN
används sällan eftersom du kan uppnå resultaten av en RIGHT JOIN
genom att helt enkelt byta ut de två sammanfogade tabellnamnen i en LEFT JOIN
. I den här sökningen av datasetet Crunchbase ger till exempel LEFT JOIN
-avsnittet:
SELECT companies.permalink AS companies_permalink, companies.name AS companies_name, acquisitions.company_permalink AS acquisitions_permalink, acquisitions.acquired_at AS acquired_date FROM tutorial.crunchbase_companies companies LEFT JOIN tutorial.crunchbase_acquisitions acquisitions ON companies.permalink = acquisitions.company_permalink
samma resultat som den här sökningen:
SELECT companies.permalink AS companies_permalink, companies.name AS companies_name, acquisitions.company_permalink AS acquisitions_permalink, acquisitions.acquired_at AS acquired_date FROM tutorial.crunchbase_acquisitions acquisitions RIGHT JOIN tutorial.crunchbase_companies companies ON companies.permalink = acquisitions.company_permalink
Konventionen att alltid använda LEFT JOIN
existerar troligen för att göra sökningar lättare att läsa och granska, men utöver det finns det inte nödvändigtvis någon stark anledning att undvika att använda RIGHT JOIN
.
Det är värt att notera att LEFT JOIN
och RIGHT JOIN
kan skrivas som LEFT OUTER JOIN
respektive RIGHT OUTER JOIN
.
Skärp dina SQL-kunskaper
Praktikproblem
Skriv om den tidigare praktikfrågan där du räknade totala och förvärvade företag per delstat, men med ett RIGHT JOIN
i stället för ett LEFT JOIN
. Målet är att få fram exakt samma resultat.
Testa det Se svaret