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

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


ในบทความนี้ เราจะเข้าใจความแตกต่างระหว่าง inner join และ outer join ใน SQL

การเข้าร่วมภายใน

  • ประโยคที่ใช้คือ 'INNER JOIN' และ 'JOIN'

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

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

  • หากจำนวน tuples มากกว่า "INNER JOIN" จะทำงานได้อย่างรวดเร็วเมื่อเปรียบเทียบกับ "OUTERJOIN"

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

  • "เข้าร่วม" และ "เข้าร่วมภายใน" ทำงานในลักษณะเดียวกัน

ไวยากรณ์

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

การรวมภายนอก

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

  • ส่งคืนแม้ว่าเงื่อนไข '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