ความหมายของ RIGHT JOIN
RIGHT JOIN ทำงานคล้าย LEFT JOIN แต่กลับด้าน: คืนแถวทั้งหมดจากตารางขวา (Right table) ส่วนตารางซ้ายที่ไม่มีค่าจับคู่จะเป็น NULL
ข้อมูลตัวอย่าง
mysql> SELECT * FROM tbl_1;
+----+--------+
| Id | Name |
+----+--------+
| 1 | Gaurav |
| 2 | Rahul |
| 3 | Raman |
| 4 | Aarav |
+----+--------+
mysql> SELECT * FROM tbl_2;
+----+---------+
| Id | Name |
+----+---------+
| A | Aarav |
| B | Mohan |
| C | Jai |
| D | Harshit |
+----+---------+
คำสั่ง RIGHT JOIN
SELECT tbl_1.id, tbl_2.id
FROM tbl_1 RIGHT JOIN tbl_2 ON tbl_1.name = tbl_2.name;
ผลลัพธ์
+------+----+
| id | id |
+------+----+
| 4 | A |
| NULL | B |
| NULL | C |
| NULL | D |
+------+----+
การอธิบาย
- ทุกแถวของ
tbl_2(ตารางขวา) แสดงผลครบ - เฉพาะ 'Aarav' ที่มีในทั้งสองตาราง จึงมีค่า id จาก tbl_1
- Mohan, Jai, Harshit ไม่มีใน tbl_1 จึงแสดง NULL
Syntax
SELECT columns
FROM table1 RIGHT JOIN table2 ON table1.column = table2.column;