We use JOIN clause in SQL to combine rows from two or more tables based on a similar column between those tables.
SELECT column/columns FROM table1 INNER JOIN table2 ON table1.column = table2.column;
Basically we are selecting columns from table 1 and 2 and joining them where the records are matching. Let’s look at the example,
SELECT country.Region, countrylanguage.Language, country.Name FROM country INNER JOIN countrylanguage ON country.Code=countrylanguage.CountryCode LIMIT 20;
In the example above, I am selecting Region column from country table, Language column form countrylanguage table and Name column for country table. Now the inner join has been performed on countrylanguage table. In the case of INNER JOIN, the order of the the tables doesn’t matter as it’s going to select the matching values only. Now we have to apply the condition to make sure we are getting the data for matching values only.
Now in the countrylanguage the name of the country code column is CountryCode but in the country table it’s just Code. So we have to be careful while comparing those two columns or the query won’t work. So at the end the second condition is c.CountryCode=b.Code
To show only limited number of rows I have used the LIMIT clause. You can see the results in the DEMO. For all the matching values we have Region, Language and Name data.
database INNER JOIN SQL JOIN