Câu lệnh Right Join trong SQL lấy tất cả dữ liệu bảng bên phải, sau đó đối chiếu và lấy dữ liệu tương ứng ở bảng bên trái. Nếu không có thì kết quả là null.
Cú pháp:
Trong đó:
– column_name là tên cột.
– table1 và table2 là 2 bảng mà bạn muốn nối với nhau.
– on là 2 cột ở 2 bảng mà bạn muốn nối.
Lưu ý: Trong một số Database, Right Join được gọi là Right Outer Join.
Cơ sở dữ liệu demo
Ví dụ chúng ta 2 bảng như bên dưới: DonHang và KhachHang.
Bảng DonHang:
SoDonHang | MaKH | MaNV | NgayDatHang | MaCuaHang |
1000 | 1 | 77 | 2021-08-12 | SG01 |
1001 | 2 | 78 | 2021-08-14 | CT02 |
1002 | 3 | 79 | 2021-08-15 | SG04 |
Bảng NhanVien:
MaNV | HoNV | TenNV | NgaySinhNV | HinhNV |
77 | Huỳnh | Ngọc Trâm | 1998-06-20 | nv77.jpg |
78 | Nguyễn | Huỳnh Như | 1995-08-15 | nv78.jpg |
79 | Lê | Bảo Vy | 2000-11-13 | nv79.jpg |
Ví dụ về Right Join
Bây giờ chúng ta sẽ nối 2 bảng này lại, và lấy cột MaNV ở bảng NhanVien làm gốc. Nó sẽ lấy toàn bộ bảng NhanVien nối với các giá trị tương ứng (dò theo cột MaNV) ở bảng DonHang.
Kết quả trả về là tất cả nhân viên và các đơn hàng mà họ đã xử lý.
Trong đó:
– Dấu * nghĩa là lấy tất cả thông tin trong bảng.
– DonHang và NhanVien là 2 bảng nối với nhau.
– MaNV là cột làm gốc để đối chiếu 2 bảng.
Kết quả là:
SoDonHang | MaKH | NgayDatHang | MaCuaHang | MaNV | HoNV | TenNV | NgaySinhNV | HinhNV |
1000 | 1 | 2021-08-12 | SG01 | 77 | Huỳnh | Ngọc Trâm | 1998-06-20 | nv77.jpg |
1001 | 2 | 2021-08-14 | CT02 | 78 | Nguyễn | Huỳnh Như | 1995-08-15 | nv78.jpg |
1002 | 3 | 2021-08-15 | SG04 | 79 | Lê | Bảo Vy | 2000-11-13 | nv79.jpg |
Cả hai bảng này đều có đủ giá trị nên nó không hiện null. Chứ nếu bảng DonHang mà có giá trị nào trống thì nó sẽ hiện null.
- Pan HP folio 9470p kích lúc lên lúc không - 15/03/2024
- Dell 3421 không kích được nguồn - 14/03/2024
- Chia sẻ pan mất nguồn đầu vào trên Lenovo S410 - 13/03/2024