การใช้ inner join ภาษา sql
syntax : SELECT * FROM table1 INNER JOIN table2 ON table1.primary_key = table2.foreign_key ;
inner join เป็นการจับเอาตาราง 2 ตาราง มารวมกัน โดยยึดหลักว่า ข้อมูลจะต้องมีตรงกัน ในทั้งสองตาราง ถึงจะเอามา
ถ้าผมมี ตาราง ในฐานข้อมูล 2 ตาราง และ มีข้อมูล ดังนี้
ตาราง member
ดูคำสั่งนี้นะครับ
SELECT * FROM branch INNER JOIN member ON ( branch.branch_id = member.branch_id)
ผลลัพธ์ จะได้ข้อมูล 3 แถว
จะเห็นว่าข้อมูลที่ได้มา จะต้องมี branch_id ทั้งในตาราง ที่หนึ่ง และ ตารางที่สอง ถ้าตารางที่ 1 มี แต่ตารางที่ 2 ไม่มี ก็ไม่เอาข้อมูล แถวนั้น
Trust says:
22/09/2552 at 22/09/2552
ถามหน่อยครับว่า ถ้าใช้เป็น SELECT * FROM branch INNER JOIN member ON (member.branch_id = branch.branch_id)
ผลลัพธ์จะต่างกันมั้ยครับ (สลับที่ member.branch_id กับ branch.branch_id) เท่าที่ผมลองก็ไม่ต่างกัน แต่สงสัยอะครับ
ขอบคุณครับ
administrator says:
22/09/2552 at 22/09/2552
ไม่ต่างกันครับ ไม่ว่าจะสลับไปอยู่หน้าหรืออยู่หลัง เพราะวิธีการเปรียบเทียบของ inner join ก็คือคีย์ จะต้องมีในทั้งสองตาราง
ไม่สนใจใครมาก่อน
Ballalist says:
10/01/2554 at 10/01/2554
ขอบคุณครับ กำลังต้องการ อิอิ
วรสิทธิ says:
03/03/2554 at 03/03/2554
แต่ถ้าผม ทำการส่งลิงค์ จาก ตัวนึงโดยกำหนดค่า เป็น cate_id=$cate_id มา
แล้วอยากให้หน้าที่ผมส่งมาถึง แสดงข้อมูลอีกตารางนึง ที่มีค่า cate_id เหมือนกัน ทำไงครับ มืดมาสี่วันแล้ว
บอย says:
11/01/2556 at 11/01/2556
ถ้าต้อง เอา id ไม่เหมือน กัน ต้องเขียนยังไงเหรอ ครับ
SELECT * FROM branch INNER JOIN member ON (member.branch_id != branch.branch_id)
ใช้ != ใช้ ได้ไหมครับ
วัชรเมธน์ ชิษณุคุปต์ ศรีเนธิโรทัย says:
11/01/2556 at 11/01/2556
ทำไปเพื่อ?
Moo says:
06/06/2557 at 06/06/2557
SELECT * FROM branch INNER JOIN member ON ( branch.branch_id = member.branch_id)
กับ
SELECT * FROM member INNER JOIN branch ON ( branch.branch_id = member.branch_id)
ต่างกันหรือเปล่าครับ เรื่องความเร็วในการแสดงข้อมูลนะครับ
makom says:
30/10/2557 at 30/10/2557
มีแบบ เลือกเฉพาะที่มีในตารางแรก แต่ไม่มีในตารางที่สองไหมครับ
วัชรเมธน์ ชิษณุคุปต์ ศรีเนธิโรทัย says:
03/11/2557 at 03/11/2557
LEFT JOIN
Ray says:
01/11/2557 at 01/11/2557
ถ้า สาม ตาราง รวมกันอ่ะค่ะ ต้องใช้คำสั่งอะไร