Trong cấu trúc cơ sở dữ liệu SQL có một hàm mà các bạn sẽ cần phải sử dụng rất thường xuyên, đó là Inner Join. Vậy, Inner Join trong SQL là cú pháp gì, có tác dụng như thế nào? Nếu các bạn đang tìm hiểu về cú pháp này hãy theo dõi bài viết kết hợp cùng một vài ví dụ dưới đây để hiểu rõ hơn.
Mục lục[ẩn]
SQL Inner Join là một mệnh đề được dùng nhằm mục đích truy vấn kết quả. Khi viết đúng câu lệnh, hệ thống sẽ trả về tập hợp dữ liệu thỏa mãn điều kiện từ hai bảng. Câu lệnh này sẽ thực hiện truy vấn dữ liệu trong bang1 và bang2, thực hiện so sánh mỗi hàng trong hai bảng để tìm ra các cặp hàng kết hợp thỏa mãn điều kiện người dùng đưa ra.
Cú pháp của câu lệnh Inner Join SQL cơ bản như sau:
SELECT cot1, cot2,... cotn FROM bang1 INNER JOIN bang2 ON bang1.cot_chung = bang2.cot_chung;
Trong đó:
Để các bạn có thể hiểu rõ hơn về Inner Join in SQL chúng tôi xin lấy một vài ví dụ sau:
Giả sử, chúng ta có hai bảng tên là NHANVIEN và TIENTHUONG với nội dung các cột như sau:
Bảng 1: NHANVIEN
ID | TEN | TUOI | DIACHI | LUONG |
1 | Thanh | 32 | haiphong | 2000.00 |
2 | Loan | 25 | Hanoi | 1500.00 |
3 | Nga | 23 | Hanam | 2000.00 |
4 | Manh | 25 | Hue | 6500.00 |
5 | Huy | 27 | Hatinh | 8500.00 |
6 | Cao | 22 | HCM | 4500.00 |
7 | Lam | 24 | Hanoi | 10000.00 |
Bảng 2: TIENTHUONG
TT_ID | NGAY | 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 | 1560 |
103 | 2018-12-20 00:00:00 | 4 | 2060 |
Câu lệnh Inner Join trong SQL dùng để join hai bảng này lại như sau:
SELECT ID, TEN, SOTIEN, NGAY FROM NHANVIEN INNER JOIN TIENTHUONG ON NHANVIEN.ID = TIENTHUONG.NHANVIEN_ID;
Khi thực hiện câu lệnh chúng ta sẽ nhận được kết quả trả về là:
ID | TEN | SOTIEN | NGAY |
3 | Nga | 3000 | 2019-01-08 00:00:00 |
3 | Nga | 1500 | 2019-01-08 00:00:0 |
2 | Loan | 1560 | 2019-02-20 00:00:00 |
4 | Manh | 2060 | 2018-12-20 00:00:00 |
Trên đây là giải đáp của chúng tôi về câu lệnh Inner Join trong SQL và ví dụ minh họa. Hy vọng thông qua bài viết này các bạn đã hiểu ý nghĩa và cách sử dụng câu lệnh này như thế nào. Chúc các bạn học tập tốt môn cấu trúc cơ sở dữ liệu và sử dụng thành thạo Inner Join.