Att joina data i SQL
Maham Faisal Khan
Senior Content Developer, DataCamp

INNER JOIN söker efter poster i båda tabellerna som matchar på ett givet fält INNER JOIN på fältet id
INNER JOIN ON fältet id
INNER JOIN ON fältet id
Världsledare fram till 2024:

SELECT *
FROM presidents;
| country | continent | president |
|----------|---------------|-------------------------|
| Egypt | Africa | Abdel Fattah el-Sisi |
| Portugal | Europe | Marcelo Rebelo de Sousa |
| USA | North America | Joe Biden |
| Uruguay | South America | Luis Lacalle Pou |
| Pakistan | Asia | Asif Ali Zardari |
| Chile | South America | Gabriel Boric |
| India | Asia | Droupadi Murmu |
prime_ministers
presidents
prime_ministers
--Inner join of presidents and prime_ministers, joining on countrySELECT prime_ministers.country, prime_ministers.continent, prime_minister, presidentFROM presidentsINNER JOIN prime_ministersON presidents.country = prime_ministers.country;
Obs! Formatet tabell.kolumnnamn måste användas vid val av kolumner som finns i båda tabellerna, annars uppstår ett SQL-fel.
| country | continent | prime_minister | president |
|----------------|-----------|------------------|-------------------------|
| Egypt | Africa | Mostafa Madbouly | Abdel Fattah el-Sisi |
| Portugal | Europe | Luís Montenegro | Marcelo Rebelo de Sousa |
| Pakistan | Asia | Shehbaz Sharif | Asif Ali Zardari |
| India | Asia | Narendra Modi | Ram Nath Kovind |
--Inner join of presidents and prime_ministers, joining on countrySELECT p2.country, p2.continent, prime_minister, presidentFROM presidents AS p1 INNER JOIN prime_ministers AS p2ON p1.country = p2.country;
| country | continent | prime_minister | president |
|----------------|-----------|------------------|-------------------------|
| Egypt | Africa | Mostafa Madbouly | Abdel Fattah el-Sisi |
| Portugal | Europe | Luís Montenegro | Marcelo Rebelo de Sousa |
| Pakistan | Asia | Shehbaz Sharif | Asif Ali Zardari |
| India | Asia | Narendra Modi | Ram Nath Kovind |
Alias kan användas med syntaxen tabell.kolumnnamn i SELECT- och ON-satser.
--Inner join of presidents and prime_ministers, joining on country
SELECT p2.country, p2.continent, prime_minister, president
FROM presidents AS p1
INNER JOIN prime_ministers AS p2
USING(country);
| country | continent | prime_minister | president |
|----------------|-----------|------------------|-------------------------|
| Egypt | Africa | Mostafa Madbouly | Abdel Fattah el-Sisi |
| Portugal | Europe | Luís Montenegro | Marcelo Rebelo de Sousa |
| Pakistan | Asia | Shehbaz Sharif | Asif Ali Zardari |
| India | Asia | Narendra Modi | Ram Nath Kovind |
Att joina data i SQL