Đôi khi chúng ta cần gôm dữ liệu của 2 hoặc nhiều bảng lại với nhau bằng cách chỉ chạy 1 lần script SQL mà thôi. để thực hiện yêu cầu đó, chúng ta sử dụng UNION.
UNION : gộp data của 2 câu sql lại với nhau trả về kết quả không trùng data tương tự như SELECT DISTINCT
Cú pháp:
[ Câu lệnh SQL 1]
UNION
[Câu lệnh SQL 2]
Điều kiện bắt buột là số lượng cột trong câu lệnh SQL 1 và 2 phải bằng nhau, và phải giống nhau về kiểu dữ liệu của từng cột.
Vd:
bảng tb_1 có dữ liệu
ten nam_sinh
--------------
AA 1987
BB 1988
CC 1989
bảng tb_2 có dữ liệu
ten nam_hoc
-------------
EE 2000
FF 1988
DD 1999
Chúng ta muốn tìm được có tất cả bao nhiêu năm không trùng trong 2 bảng tb_1 và tb_2 như sau:
Select nam_sinh from tb_1
Union
Select nam_hoc from tb_2
kết quả đạt được
nam_sinh
---------
1987
1988
1989
2000
1999
Năm 1988, có ở 2 bảng nhưng chỉ lấy ra 1 lần , chúng ta có được kết quả data không trùng lặp
Sign up here with your email
ConversionConversion EmoticonEmoticon