SQL RIGHT JOIN
เป็นคำสั่งที่ใช้สำหรับการระบุเงื่อนไขการเลือกข้อมูลในตาราง (Table) โดยเงื่อนไขการ RIGHT JOIN จะทำการเลือกข้อมูลหลักและข้อมูลเชื่อมโยงที่สัมพันธ์กัน โดยจะทำการอิงจาก Table สองสำคัญก่อน ถ้าไม่มีข้อมูลใน Table แรก ข้อมูล Table สองก็ยังถูกสนใจและนำมาแสดงผล
Database : MySQL,Microsoft Access,SQL Server,Oracle
Syntax
SELECT [Table-Name1].Column1, [Table-Name2].Column1,... FROM [Table-Name1]
RIGHT JOIN [Table-Name2] ON [Table-Name1].Column = [Table-Name2].Column
RIGHT JOIN [Table-Name2] ON [Table-Name1].Column = [Table-Name2].Column
Table : customer
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|---|---|---|---|---|---|
C001
| Win Weerachai | win.weerachai@thaicreate.com |
TH
| 1000000 | 600000 |
C002
| John Smith | john.smith@thaicreate.com |
EN
| 2000000 | 800000 |
C003
| Jame Born | jame.born@thaicreate.com |
US
| 3000000 | 600000 |
C004
| Chalee Angel | chalee.angel@thaicreate.com |
US
| 4000000 | 100000 |
C006
| Superman Return | supermain.return@thaicreate.com |
US
| 2000000 | 0 |
Table : audit
AuditID
|
CustomerID
|
Date
|
Used
|
|---|---|---|---|
1
|
C001
|
2008-07-01
| 100000 |
2
|
C001
|
2008-07-05
| 200000 |
3
|
C001
|
2008-07-10
| 300000 |
4
|
C002
|
2008-07-02
| 400000 |
5
|
C002
|
2008-07-07
| 100000 |
6
|
C002
|
2008-07-15
| 300000 |
7
|
C003
|
2008-07-20
| 400000 |
8
|
C003
|
2008-07-25
| 200000 |
9
|
C004
|
2008-07-04
| 100000 |
10
|
C005
|
2008-07-04
| 200000 |
Sample1 การเลือกข้อมูลแบบ RIGHT JOIN ตาราง customer และ audit
SELECT customer.*,audit.* FROM customer
RIGHT JOIN audit ON customer.CustomerID = audit.CustomerID
RIGHT JOIN audit ON customer.CustomerID = audit.CustomerID
Output
|
CustomerID
|
Name
|
Email
|
Budget
|
Used
|
AuditID
|
Date
|
Used
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
1000000
|
600000
|
1
|
2008-08-01
|
100000
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
1000000
|
600000
|
2
|
2008-08-05
|
200000
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
1000000
|
600000
|
3
|
2008-08-10
|
300000
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
2000000
|
800000
|
4
|
2008-08-02
|
400000
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
2000000
|
800000
|
5
|
2008-08-07
|
100000
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
2000000
|
800000
|
6
|
2008-08-15
|
300000
|
|
C003
|
Jame Born
|
jame.smith@thaicreate.com
|
3000000
|
600000
|
7
|
2008-08-20
|
400000
|
|
C003
|
Jame Born
|
jame.smith@thaicreate.com
|
3000000
|
600000
|
8
|
2008-08-25
|
200000
|
|
C004
|
Chalee Angel
|
chalee.angel@thaicreate.com
|
4000000
|
100000
|
9
|
2008-07-04
|
100000
|
|
NULL
|
NULL
|
NULL
|
NULL
|
NULL
|
10
|
2008-07-04
|
200000
|
Sample2 การเลือกข้อมูลแบบ RIGHT JOIN ตาราง customer และ audit และ CustomerID = C005
SELECT customer.*,audit.* FROM customer
RIGHT JOIN audit ON customer.CustomerID = audit.CustomerID
WHERE audit.CustomerID = 'C005'
RIGHT JOIN audit ON customer.CustomerID = audit.CustomerID
WHERE audit.CustomerID = 'C005'
Output
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
CustomerID
|
Used
|
|
NULL
|
NULL
|
NULL
|
NULL
|
NULL
|
NULL
|
C005
|
20000
|
Sample3 การเลือกข้อมูลแบบ RIGHT JOIN ตาราง customer และ audit และ CustomerID = C005 และแสดงผลเฉพาะตาราง audit
SELECT audit.* FROM customer
RIGHT JOIN audit ON customer.CustomerID = audit.CustomerID
WHERE audit.CustomerID = 'C005'
RIGHT JOIN audit ON customer.CustomerID = audit.CustomerID
WHERE audit.CustomerID = 'C005'
Output
AuditID
|
CustomerID
|
Date
|
Used
|
|---|---|---|---|
10
|
C005
|
2008-08-07
| 200000 |
ไม่มีความคิดเห็น:
แสดงความคิดเห็น