Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ความแตกต่างระหว่าง Inner Join และ Outer Join ใน SQL


ในบทความนี้ เราจะทำความเข้าใจความแตกต่างระหว่าง Inner Join และ Outer Join ใน SQL

Inner Join

  • ใช้คลอส 'INNER JOIN' และ 'JOIN'

  • ส่งคืนทูเพิลรวมของตาราง 2 ตารางขึ้นไป

  • เมื่อไม่มีแอตทริบิวต์ร่วมกัน ผลลัพธ์จะว่างเปล่า

  • หากจำนวนทูเพิลมาก 'INNER JOIN' จะทำงานเร็วกว่า 'OUTER JOIN'

  • ใช้เมื่อต้องการข้อมูลรายละเอียดเกี่ยวกับแอตทริบิวต์เฉพาะ

  • 'JOIN' และ 'INNER JOIN' ทำงานเหมือนกัน

รูปแบบคำสั่ง

SELECT * FROM table_1 INNER JOIN / JOIN table_2 ON table_1.column_name = table_2.column_name;

Outer Join

  • ส่งคืนทูเพิลรวมของตารางที่ระบุ

  • ส่งคืนแม้เงื่อนไข 'JOIN' จะล้มเหลว

  • สามารถใช้คลอส LEFT OUTER JOIN, RIGHT OUTER JOIN, FULL OUTER JOIN

  • ไม่ขึ้นอยู่กับแอตทริบิวต์ร่วมกัน

  • หากแอตทริบิวต์ว่าง จะใส่ NULL แทนค่าว่าง

  • 'OUTER JOIN' ช้ากว่า 'INNER JOIN'

  • ใช้เมื่อต้องการข้อมูลครบถ้วน

  • FULL OUTER JOIN และ FULL JOIN ทำงานเหมือนกัน

รูปแบบคำสั่ง

SELECT * FROM table_1 LEFT OUTER JOIN / RIGHT OUTER JOIN / FULL OUTER JOIN / FULL JOIN table_2 ON Table_1.column_name = table_2.column_name;

No