มาดู INTERSECT กัน

การ Join ข้อมูลใน SQL

Maham Faisal Khan

Senior Content Developer, DataCamp

แผนภาพเวนน์ของ INTERSECT

ภาพแสดงแผนภาพเวนน์ 3 แบบ โดย 2 แบบจางลง เหลือเพียงแผนภาพ INTERSECT ที่เน้น แผนภาพ INTERSECT มีวงกลมซ้อนกัน 2 วง โดยส่วนที่ซ้อนทับกันถูกระบายสีเขียว

การ Join ข้อมูลใน SQL

แผนภาพ INTERSECT

แผนภาพแสดงตาราง 2 ตาราง ซ้ายและขวา ด้านขวาของแผนภาพแสดงผลลัพธ์เมื่อทำการ INTERSECT กับตารางทั้งสอง

การ Join ข้อมูลใน SQL

ไวยากรณ์ของ INTERSECT

SELECT id, val
FROM left_table

INTERSECT
SELECT id, val FROM right_table;
การ Join ข้อมูลใน SQL

INTERSECT เทียบกับ INNER JOIN บนสองคอลัมน์

ไวยากรณ์ของ INTERSECT

SELECT *
FROM left_table
INTERSECT
SELECT *
FROM right_table;

แผนภาพแสดงตาราง 2 ตาราง ซ้ายและขวา ด้านขวาของแผนภาพแสดงผลลัพธ์เมื่อทำการ UNION กับตารางทั้งสอง

ไวยากรณ์ของ INNER JOIN

SELECT l.id, l.val
FROM left_table AS l
INNER JOIN right_table AS r
  ON l.id = r.id
      AND l.val = r.val;

แผนภาพแสดงตาราง 2 ตาราง ซ้ายและขวา ด้านขวาของแผนภาพแสดงผลลัพธ์เมื่อทำ INNER JOIN กับตารางทั้งสอง

การ Join ข้อมูลใน SQL

ประเทศที่มีทั้งนายกรัฐมนตรีและประธานาธิบดี

SELECT country as intersect_country
FROM prime_ministers
INTERSECT
SELECT country
FROM presidents;
| intersect_country |
|-------------------|
| Egypt             |
| Portugal          |
| Pakistan          |
| India             |
การ Join ข้อมูลใน SQL

INTERSECT บนสองฟิลด์

SELECT country, prime_minister AS leader
FROM prime_ministers
INTERSECT
SELECT country, president
FROM presidents;
|-----------|----------|
| country   | leader   |
|-----------|----------|
|-----------|----------|
การ Join ข้อมูลใน SQL

ประเทศที่มีทั้งนายกรัฐมนตรีและกษัตริย์

SELECT country, prime_minister AS leader
FROM prime_ministers
INTERSECT
SELECT country, monarch
FROM monarchs;
|---------|--------------------|
| country | leader             |
|---------|--------------------|
| Brunei  | Hassanal Bolkiah   |
| Oman    | Haitham bin Tarik  |
|---------|--------------------|
การ Join ข้อมูลใน SQL

มาฝึกกันเถอะ!

การ Join ข้อมูลใน SQL

Preparing Video For Download...