16/08/2022

Mệnh đề THAM GIA trong SQL

Trong SQL, mệnh đề JOIN được sử dụng để kết hợp các bản ghi từ hai hoặc nhiều bảng trong cơ sở dữ liệu bằng cách sử dụng các giá trị chung từ mỗi bảng.

Trong bài viết này, thungnhamninhbinh sẽ hướng dẫn chi tiết cách sử dụng mệnh đề JOIN trong SQL với các ví dụ cụ thể để bạn dễ hình dung và nắm bắt lệnh tốt hơn.

Các kiểu tham gia SQL

Giả sử có hai bảng, NHANVIEN và TIENTHUONG, với các bản ghi sau:

Bảng 1: NHANVIEN

+ —- + ———- + —– + ———– + ———- + | ID | TEN | TUOI | DIACHI | LƯƠNG | + —- + ———- + —– + ———– + ———- + | 1 | Thanh | 32 | Hải Phòng | 20000,00 | | 2 | Cho vay | 25 | Hà nội | 1500,00 | | 3 | Nga | 23 | Hanam | 20000,00 | | 4 | Manh | 25 | Huế | 6500,00 | | 5 | Huy | 27 | Hà tĩnh | 8500,00 | | 6 | Cao | 22 | Thành phố Hồ Chí Minh | 4500,00 | | 7 | Lam | 24 | Hà nội | 10000,00 | + —- + —— + —– + ———– + ———- +

Bảng 2: TIENTHUONG

+ —– + ——————— + ———— + ——- – + | TT_ID | NGAY BÂY GIỜ | NHANVIEN_ID | SOTIEN | + —– + ——————— + ———— + ——- – + | 102 | 2019-01-08 00:00:00 | 3 | 3000 | | 100 | 2019-01-08 00:00:00 | 3 | 1500 | | 101 | 2019-02-20 00:00:00 | 2 | Năm 1560 | | 103 | 2018-12-20 00:00:00 | 4 | Năm 2060 | + —– + ——————— + ———— + ——- – +

Bây giờ, chúng ta kết hợp hai bảng này trong câu lệnh SELECT như sau:

SQL> CHỌN ID, TEN, TUOI, SOTIEN
TỪ NHANVIEN, TIENTHUONG
WHERE NHANVIEN.ID = TIENTHUONG.NHANVIEN_ID;

Kết quả trả về là:

+ —- + ———- + —– + ——– + | ID | TEN | TUOI | SOTIEN | + —- + ———- + —– + ——– + | 3 | Nga | 23 | 3000 | | 3 | Nga | 23 | 1500 | | 2 | Cho vay | 25 | Năm 1560 | | 4 | Manh | 25 | Năm 2060 | + —- + —– + —– + ——– +

Bạn có thể thấy ở đây, JOIN được thực hiện trong mệnh đề WHERE. Một số toán tử có thể được sử dụng để kết hợp các bảng là: =, <, ><>, <=, >=,! =, GIỮA, THÍCH và KHÔNG. Tuy nhiên, toán tử được sử dụng phổ biến nhất là dấu bằng (=).

See also  Cách thiết lập PC Windows để luôn tỉnh táo

Các kiểu tham gia SQL

Trong SQL, có sẵn một số loại JOIN:

Loại JOIN Ý nghĩa INNER JOINT Trả về các bản ghi có giá trị khớp giữa hai bảng. LIÊN DOANH TRÁI Trả về tất cả các bản ghi từ bảng bên trái và khớp các bản ghi từ bảng bên phải. Kết quả là NULL từ phía bên phải nếu không có kết quả phù hợp. RIGHT JOINT Trả về tất cả các bản ghi từ bảng bên phải và các bản ghi phù hợp từ bảng bên trái. Kết quả là NULL từ phía bên trái nếu không có kết quả khớp nào. là hai bảng, tạm thời đổi tên ít nhất một bảng trong lệnh SQL.CARTESIAN JOINT Trả về tích Descartes của các tập bản ghi từ hai hoặc nhiều bảng đã hợp nhất.

Trong các bài viết tiếp theo, thungnhamninhbinh sẽ cùng các bạn trao đổi kỹ hơn về từng loại THAM GIA kể trên. Bạn có nhớ nó!

Bài trước: Ràng buộc trong SQL

Bài tiếp theo: Mệnh đề UNION trong SQL