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.
1. Cú pháp INNER JOIN trong SQL
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 đó:
- Cot1, cot2,… cotn: Tên các cột mà người dùng muốn hiển thị kết quả truy vấn. Trong cú pháp, các cột được phân cách bằng một dấu phẩy (,)
- Bang1, bang2: Tên bảng truy vấn dữ liệu
- Cot_chung: Tên cột khóa ngoại được dùng để tham chiếu từ bag 1 đến cột định danh ở bang2 hoặc ngược lại
2. Ví dụ về INNER JOIN trong SQL
Để 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.