Các bạn đã biết việc kết hợp hai bảng tính lại với nhau dựa vào cột nào đó cực kỳ quan trọng, vậy làm sao để tổng hợp chúng lại với nhau theo điều kiện lọc đó, hãy theo dõi bài viết sau đây để biết thêm những điều thú vị về sử dụng SQL Excel tại Học Excel Online nhé.
Yêu cầu
Để công việc của các bạn trở nên đơn giản hơn mà không cần viết code trên vba các bạn hãy tải về và cài đặt Add ins-HocExcelOnline
Giới thiệu về câu lệnh JOIN trong sử dụng SQL Excel
Ta có bảng dữ liệu nhân sự sau.
Từ khóa “INNER JOIN”
Ý nghĩa
Từ khóa “INNER JOIN” trả ra tất cả các bản ghi có giá trị phù hợp.
Dù đã có phần mềm, nhưng kỹ năng Excel vẫn cực kỳ quan trọng với kế toán, bạn đã vững Excel chưa? Hãy để tôi giúp bạn, đăng ký khoá học Excel:
Nghĩa là trong bảng 1 và bảng 2 phải có chung một điểm ở ví dụ trên là [Mã nhân viên] sẽ là điểm trung giữa hai bảng dữ liệu sẽ loại bỏ đi các giá trị không trùng nhau giữa cột [Mã nhân viên].
Cú Pháp
SELECT bang1.[cot1], bang2.[cot1]… FROM bang1 INNER JOIN bang2 On bang1.[cotloc] = bang2.[cotloc]
Từ khóa “LEFT JOIN” trong sử dụng SQL Excel
Ý nghĩa
Từ khóa “LEFT JOIN” Trả về tất cả các bản ghi từ bảng bên trái và các bản ghi phù hợp từ bảng bên phải bảng ghi bên phải không có dữ liệu sẽ trả ra giá trị rỗng.
Lấy toàn bộ dữ liệu từ bên trái của bang1 và các bảng ghi bên phải bảng 2 ghi phù hợp bên phải nếu bảng2 không có dữ liệu trả ra giá trị rỗng.
Cú Pháp
SELECT bang1.[cot1], bang2.[cot1]… FROM bang1 LEFT JOIN bang2 On bang1.[cotloc] = bang2.[cotloc]
Từ khóa “RIGHT JOIN”
Ý nghĩa
Từ khóa “RIGHT JOIN” 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 bảng ghi bên trái không có sẽ trả ra giá trị rỗng.
Ngược với LEFT JOIN từ khóa RIGHT JOIN sẽ lấy tất [Mã nhân viên] ở bảng 2 và các bảng ghi phù hợp bảng 1 nếu bảng 1 không có trả ra giá trị rỗng.
Cú pháp
SELECT bang1.[cot1], bang2.[cot1]… FROM bang1 RIGHT JOIN bang2 On bang1.[cotloc] = bang2.[cotloc]
Kết hợp từ khóa tạo ra FULL JOIN
Kết hợp giữa hai bảng lấy ra tất cả hai bảng phải làm sao bây giờ khi Excel lại không hỗ trợ FULL JOIN ta phải làm sao bây giờ đừng lo lắng nhé, ta sẽ kết hợp “LEFT JOIN” với “RIGHT JOIN” và từ khóa “UNION” là ra thôi mà
Ý nghĩa
Lấy ra toàn bộ số bản ghi giữa hai bảng
ở đây ta muốn lấy tất cả các bản ghi ở hai bảng nên sẽ sử dụng kết hợp hai từ khóa LEFT JOIN và RIGHT để tạo ra kết quả do excel không hỗ trợ FULL JOIN.
Cú pháp
SELECT bang1.[cot1], bang2.[cot1]… FROM bang1 LEFT JOIN bang2 On bang1.[cotloc] = bang2.[cotloc] UNION SELECT bang1.[cot1], bang2.[cot1]… FROM bang1 RIGHT JOIN bang2 On bang1.[cotloc] = bang2.[cotloc]
Lấy ra tất cả các bản ghi có giá trị phù hợp “INNER JOIN”
Các câu truy vấn sử dụng
Trả về tất cả các bản ghi từ bảng bên trái và các bản ghi phù hợp từ bảng bên phải bảng ghi bên phải không có dữ liệu sẽ trả ra giá trị rỗng từ khóa “LEFT JOIN”.
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 bảng ghi bên trái không có sẽ trả ra giá trị rỗng từ khóa “RIGHT JOIN”
Lấy ra toàn bộ dữ liệu giữa hai bảng tính.
Để hiểu rõ hơn về SQL các bạn có thể tham khảo những khóa học của VBA Excel để tìm hiểu kỹ hơn về sự linh động này.
Kết luận
Qua bài viết trên HocExcelOnline hy vọng các bạn vận dụng các loại “JOIN” một cách hiệu quả nhất để tạo ra những bảng báo cáo nhanh chóng và chính xác nhất, đây là một cách sử dụng SQL Excel khá hay.
Nếu thấy hay hãy ủng hộ, chia sẻ bài viết để nhiều người biết đến và Hoc Excel Online có động lực để phát triển bài viết tốt hơn.