Devdit
 

INNER JOIN คืออะไร ใช้ทำอะไร

189

INNER JOIN คือคำสั่ง SQL สำหรับแสดงข้อมูลจาก 2 ตารางพร้อมกัน จาก field ที่มีความสัมพันธ์กัน โดย field ดังกล่าวจะมีคุณสมบัติเป็น primay key ตารางหนึ่ง และ foreign key อีกตารางหนึ่ง โดยจะแสดงเฉพาะข้อมูลที่เหมือนกันเท่านั้น ข้อมูลที่ไม่เหมือนจะไม่ถูกแสดง มีรายละเอียดดังนี้

 

ตัวอย่าง โครงสร้างตาราง products และ categorys

1. ตาราง products

idtitlepricecategory_id
1Computer200.001
2Notebook180.001
3Mobile phone100.002
4iPad300.002

 

2. ตาราง categorys

idtitle
1Computer
2Gadget

 

ตัวอย่าง INNER JOIN

SELECT *
FROM products p
INNER JOIN categorys c ON ( p.category_id = c.id )

ผลลัพธ์

idtitlepricecategory_ididtitle
1Computer200.0011Computer
2Notebook180.0011Computer
3Mobile phone100.0022Gadget
4iPad300.0022Gadget

จากคำสั่ง SQL เป็นการใช้ INNER JOIN เพื่อแสดงข้อมูลที่มีความสัมพันธ์กันระหว่างตาราง products และ categorys โดยมีรายละเอียดดังนี้

1. SELECT * คือ แสดงข้อมูลจากทุก field ของทั้ง 2 ตาราง

2. FROM products p คือ แสดงข้อมูลจากตาราง products กำหนดชื่อย่อ (alias) ว่า p

3. INNER JOIN categorys c คือ Join ตาราง products กับตาราง categorys กำหนดชื่อย่อว่า c แบบ INNER JOIN

4. ON ( p.category_id = c.id ) คือ กำหนดเงื่อนไขการ Join ให้ field category_id ของตาราง products Join กับ field id ของตาราง categorys

 

สรุป INNER JOIN เป็นรูปแบบการ Join อย่างหนึ่งใน SQL โดยจะแสดงเฉพาะข้อมูลที่มีความสัมพันธ์กันของทั้ง 2 ตาราง (ข้อมูลที่เหมือนกัน) เท่านั้น หากข้อมูลใดไม่เหมือน หรือไม่มีความสัมพันธ์จะไม่ถูกแสดง

แก้ไข 2 เดือนที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ