duy nhất bạn có thể làm điều đó là bằng cách sử dụng UNION
. MySQL không hỗ trợ FULL JOIN
giống như trong MSSQL.
SELECT *
FROM tbl1 t1
LEFT JOIN tbl2 t2
ON t1.col = t2.col
UNION
SELECT *
FROM tbl1 t1
RIGHT JOIN tbl2 t2
ON t1.col>= t2.<col
SEE HERE: Simulating FULL JOIN in MYSQL
Bằng cách này, UNION
có tùy chọn từ khóa ALL
, khi ALL
được bỏ qua, UNION
tự động chọn DISTINCT
hàng từ resultset.
examle:
SELECT *
FROM tableA
UNION ALL
SELECT *
FROM tableA
này có thể dẫn đến bản sao hàng
ColA ColB
==================
1 John
2 Jade
2 Jade
3 Hello
NHƯNG nếu bạn bỏ qua lời ALL
SELECT *
FROM tableA
UNION
SELECT *
FROM tableA
này có thể dẫn đến hàng riêng biệt chỉ
ColA ColB
==================
1 John
2 Jade
3 Hello
Nguồn
2012-08-11 08:26:38