ความแตกต่างระหว่างการรวมภายในและการเข้าร่วมตามธรรมชาติ

สารบัญ:

ความแตกต่างระหว่างการรวมภายในและการเข้าร่วมตามธรรมชาติ
ความแตกต่างระหว่างการรวมภายในและการเข้าร่วมตามธรรมชาติ

วีดีโอ: ความแตกต่างระหว่างการรวมภายในและการเข้าร่วมตามธรรมชาติ

วีดีโอ: ความแตกต่างระหว่างการรวมภายในและการเข้าร่วมตามธรรมชาติ
วีดีโอ: การวิเคราะห์ความแตกต่างของค่าเฉลี่ยและของกลุ่ม 2024, พฤศจิกายน
Anonim

ความแตกต่างที่สำคัญระหว่าง Inner Join และ Natural Join คือ Inner Join ให้ผลลัพธ์ตามข้อมูลที่ตรงกันตามเงื่อนไขความเท่าเทียมกันที่ระบุไว้ในแบบสอบถาม ในขณะที่ Natural Join ให้ผลลัพธ์ตามคอลัมน์ที่มีชื่อเดียวกันและ ชนิดข้อมูลเดียวกันที่มีอยู่ในตารางที่จะเข้าร่วม

DBMS ช่วยให้จัดเก็บ เรียกค้น และจัดการข้อมูลได้อย่างง่ายดาย มันเก็บข้อมูลในรูปแบบของตาราง แต่ละตารางประกอบด้วยแถวและคอลัมน์ แถวแสดงถึงแต่ละเอนทิตีในขณะที่คอลัมน์แสดงถึงแอตทริบิวต์ สมมติว่าเป็นฐานข้อมูลนักเรียน แต่ละแถวแสดงถึงนักเรียน คอลัมน์แสดงถึงคุณลักษณะต่างๆ เช่น รหัส ชื่อ เกรด อายุDBMS คือชุดของตารางและแต่ละตารางมีความสัมพันธ์กันโดยใช้ข้อจำกัด เช่น คีย์ภายนอก บางครั้งก็ไม่เพียงพอที่จะใช้โต๊ะเดียว มีสถานการณ์ที่ต้องใช้หลายตาราง ในการรวมสองตารางเข้าด้วยกัน ควรมีคอลัมน์ร่วมกันอย่างน้อยหนึ่งคอลัมน์ การรวมตารางเรียกว่า join

การเข้าร่วมภายในคืออะไร

ตัวอย่างสำหรับ inner join มีดังนี้ ด้านล่างเป็นตารางนักเรียน

ความแตกต่างระหว่าง Inner Join และ Natural Join รูปที่ 1
ความแตกต่างระหว่าง Inner Join และ Natural Join รูปที่ 1

ตาราง student_info มีดังนี้

ความแตกต่างระหว่าง Inner Join และ Natural Join fig 2
ความแตกต่างระหว่าง Inner Join และ Natural Join fig 2

ในการเข้าร่วมภายใน ควรมีการแข่งขันอย่างน้อยหนึ่งรายการระหว่างทั้งสองโต๊ะ id 1, 2, 3 เป็นเรื่องธรรมดาสำหรับทั้งสองตาราง จึงสามารถทำการ inner join ได้

ความแตกต่างระหว่างการเข้าร่วมภายในและการเข้าร่วมตามธรรมชาติ
ความแตกต่างระหว่างการเข้าร่วมภายในและการเข้าร่วมตามธรรมชาติ

รูปที่ 01: SQL Join

ข้อความค้นหา INNER JOIN เพื่อเข้าร่วมทั้งสองตารางมีดังต่อไปนี้

เลือกจากนักเรียน

เข้าร่วมภายใน student_info WHERE student.id=student_info.id;

การดำเนินการคำสั่ง SQL ด้านบนจะส่งออกตารางต่อไปนี้

ความแตกต่างระหว่าง Inner Join และ Natural Join fig 3
ความแตกต่างระหว่าง Inner Join และ Natural Join fig 3

เข้าร่วมโดยธรรมชาติคืออะไร

ตัวอย่างสำหรับการเข้าร่วมโดยธรรมชาติมีดังนี้ ด้านล่างเป็นตารางนักเรียน

ความแตกต่างระหว่าง Inner Join และ Natural Join fig 4
ความแตกต่างระหว่าง Inner Join และ Natural Join fig 4

ตาราง student_info มีดังนี้

ความแตกต่างระหว่าง Inner Join และ Natural Join fig 5
ความแตกต่างระหว่าง Inner Join และ Natural Join fig 5

ในการรวมแบบธรรมชาติ ควรมีคอลัมน์ที่มีชื่อเดียวกันและประเภทข้อมูลเดียวกัน คอลัมน์ id จะเหมือนกันสำหรับทั้งสองตาราง ดังนั้นจึงเป็นไปได้ที่จะรวมทั้งสองตารางนี้อย่างเป็นธรรมชาติ

แบบสอบถาม NATURAL JOIN เพื่อเข้าร่วมสองตารางนี้มีดังต่อไปนี้

SELECTจากนักเรียน NATURAL JOIN student_info;

การดำเนินการคำสั่ง SQL ด้านบนจะส่งออกตารางต่อไปนี้

ความแตกต่างระหว่าง Inner Join และ Natural Join fig 6
ความแตกต่างระหว่าง Inner Join และ Natural Join fig 6

ความสัมพันธ์ระหว่าง Inner Join และ Natural Join คืออะไร

Natural Join เป็นประเภทของ Inner Join

การเข้าร่วมภายในและการเข้าร่วมแบบธรรมชาติแตกต่างกันอย่างไร

Inner join ให้ผลลัพธ์ตามข้อมูลที่ตรงกันตามเงื่อนไขความเท่าเทียมกันที่ระบุในแบบสอบถาม ในขณะที่ Join แบบธรรมชาติจะให้ผลลัพธ์ตามคอลัมน์ที่มีชื่อเดียวกันและชนิดข้อมูลเดียวกันที่มีอยู่ในตารางที่จะเข้าร่วม นอกจากนี้ syntax ของ inner join และ natural join ต่างกัน

เมื่อ table1 ประกอบด้วย id ชื่อ และ table2 ประกอบด้วย id และ city การเข้าร่วมภายในจะให้ตารางผลลัพธ์ที่มีแถวที่ตรงกัน มันจะมี id, ชื่อ, อีกครั้ง id และเมือง ในทางกลับกัน ในการเข้าร่วมตามธรรมชาติ จะให้ตารางผลลัพธ์ที่มีแถวที่ตรงกันพร้อม id คอลัมน์ ชื่อ เมือง

ความแตกต่างระหว่าง Inner Join และ Natural Join ในรูปแบบตาราง
ความแตกต่างระหว่าง Inner Join และ Natural Join ในรูปแบบตาราง

สรุป – การเข้าร่วมภายใน vs การเข้าร่วมตามธรรมชาติ

ความแตกต่างที่สำคัญระหว่าง inner join และ natural join คือ inner join ให้ผลลัพธ์ตามข้อมูลที่ตรงกันตามเงื่อนไขความเท่าเทียมกันที่ระบุในแบบสอบถาม SQL ในขณะที่การรวมแบบธรรมชาติจะให้ผลลัพธ์ตามคอลัมน์ที่มีชื่อเดียวกัน และชนิดข้อมูลเดียวกันที่มีอยู่ในตารางที่จะเข้าร่วม