Please note, this is a STATIC archive of website www.w3resource.com from 19 Jul 2022, cach3.com does not collect or store any user information, there is no "phishing" involved.
w3resource

SQL join two tables related by a single column primary key or foreign key pair using where clause

Description

In this page, we are going to discuss the usage of two or more tables in a joining with single column PRIMARY KEY and FOREIGN KEY.

Example:

Sample table: foods


Sample table: company


To get 'item_name' and 'item_unit' from 'foods' table and 'company_name' and 'company_city' form 'company' table after a joining with following conditions-

1. 'company_id' is primary key in 'company' table,

2. 'company_id' is foreign key in 'foods' table which is referencing to the, primary key of 'company' table,

3. 'company_id' of 'company' and 'foods' must be same,

4. 'company_city' of 'company' column must be 'London',

the following SQL statement can be used :

SQL Code:

SELECT foods.tem_name,foods.item_unit,
company.company_name, company.company_city
FROM foods ,company
WHERE  foods.company_id =company.company_id
AND company.company_city='London';

Output

ITEM_NAME                 ITEM_UNIT  COMPANY_NAME              COMPANY_CITY
------------------------- ---------- ------------------------- -------------
Cheez-It                  Pcs        Jack Hill Ltd             London
BN Biscuit                Pcs        Jack Hill Ltd             London
Mighty Munch              Pcs        Foodies.                  London
Pot Rice                  Pcs        Jack Hill Ltd             London

See our Model Database

Here is a new document which is a collection of questions with short and simple answers, useful for learning SQL as well as for interviews.

Practice SQL Exercises

Want to improve the above article? Contribute your Notes/Comments/Examples through Disqus.

Previous: Joining tables with group by and order by
Next: Join two tables related by a composite primary key or foriegn key pair



SQL: Tips of the Day

SQL Server SELECT into existing table.

INSERT INTO dbo.TABLETWO
SELECT col1, col2
  FROM dbo.TABLEONE
 WHERE col3 LIKE @search_key

This assumes there's only two columns in dbo.TABLETWO - you need to specify the columns otherwise:

INSERT INTO dbo.TABLETWO
  (col1, col2)
SELECT col1, col2
  FROM dbo.TABLEONE
 WHERE col3 LIKE @search_key

Database: SQL Server

Ref: https://bit.ly/3y6tpA3