Gộp bảng dữ liệu có cấu trúc giống nhau sử dụng SQL trong Excel

Chia sẻ bài viết này:
  •  
  •  
  •  
  •  
  •  
  •  
  •   
  •   

Việc tổ chức dữ liệu cực kỳ quan trọng để tạo ra các loại báo cáo, tùy thuộc vào đặc thù của doanh nghiệp, nên chúng ta không phải lúc nào cũng có dữ liệu chuẩn để tổng hợp, để giải quyết bài toán này HocExcel Online sẽ hướng dẫn các bạn sử dụng nó thế nào nhé.

Mục tiêu đạt được

Chuẩn bị

Ở đây mình sử dụng dữ liệu để tổng hợp lương của 12 tháng các bạn có thể tải file mẫu tại đây.

Để 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 Addins-HocExcelOnline tại đây nhé

Nguyên tắc gộp bảng dữ liệu

Để tránh các lỗi xảy ra trong quá trình gộp dữ liệu ta cần tuân thủ quy tắc sau:

  • Dữ liệu phải có tính nối tiếp nhau
  • Các bảng tính có cấu trúc giống nhau về số lượng cột, tên cột…
  • Trong bảng tính cần được đồng bộ dữ liệu ở các cột(đảm bảo cấu trúc dữ liệu).

Cách thực hiện gộp bảng bằng SQL

Bước 1: Đặt tên cho bảng tính

Các bạn cần đặt tên cho bảng tính tại các Sheets lại với nhau và khi đặt tên là tiếng việt không dấu và không nên để khoảng trống cách đặt tên cho vùng dữ liệu tại đây

sau khi các bạn đặt tên dữ liệu có dạng như hình sau:

Viết câu lệnh SQL

Để thực hiện gộp các bảng tính có cấu trúc giống nhau trong SQL ta sử dụng từ khóa “UNION” và “UNION ALL”

  • UNION là gộp dữ liệu và loại bỏ dữ liệu trùng nhau
  • UNION ALL là gộp dữ liệu và lấy toàn bộ dữ liệu (bao gồm cả dữ liệu trùng)

Cú pháp câu lệnh lấy dữ liệu.

SELECT bang1.[cot 1],bang1.[cot2]… FROM BANG1 UNION ALL SELECT bang2.[cot 1],bang2.[cot2]… FROM BANG2 

Cú pháp câu lệnh lấy dữ liệu và tính toán.

SELECT TH.[cot1],Sum(TH.[Cot2]) as [Cột 2] FROM (SELECT bang1.[cot 1],sum(bang1.[cot2])… FROM BANG1 UNION ALL SELECT bang2.[cot 1],bang2.[cot2]… FROM BANG2 ) AS TH GROUP BY TH.[cot1]

Ở đây các bạn có thể thay thế từ khóa “UNION” hoặc “UNION ALL” tùy vào cách các bạn dùng để tổng hợp dữ liệu. Để hiểu rõ về câu lệnh SQL hơn các bạn có thể tham dự các khóa học để hiểu hơn nhé.

SQL101 – Truy vấn dữ liệu với SQL trong Excel

VBA201 – Lập trình VBA nâng cao trong Excel

Sau khi các bạn viết xong công thức thì  việc làm đơn giản chỉ là gọi câu truy vấn ra thôi.

=Heosql(Câu truy vấn, “Tieude = y, chen = y, stt = y”)

Kết quả đạt được sẽ như sau.

Khi các bạn thay đổi dữ liệu tại các ô mà muốn cập nhật kết quả thì các bạn vào Menu của Add-Ins HocExcel Online và thực hiện ấn nút “Tính toán lại” là dữ liệu của các bạn được tự động cập nhật lại.

Thật đơn giản phải không nào?

Ngoài cách sử dụng SQL các bạn có thể tham khảo các gộp bảng sử dụng Power Query

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 “UNION” và “UNION ALL” 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

nếu thấy hay hãy ủng hộ, chia sẻ bài viết để nhiều người biết đến và HocExcel Online có động lực để phát triển bài viết tốt hơn.


Hướng dẫn cách chuyển các front chữ khác nhau trong excel sử dụng Add ins HocExcel Online

Hướng dẫn lập báo cáo tình hình sử dụng hóa đơn BC26/AC sử dụng Add ins HocExcel Online

Hướng dẫn sử dụng hàm Heounique lọc không trùng

Hàm hiện thị thông báo trong Excel sử dụng Add ins HocExcel Online

Tìm kiếm tên công ty và địa chỉ công ty dựa vào mã số thuế

Nối bảng dữ liệu trong Excel sử dụng SQL

 


Chia sẻ bài viết này:
  •  
  •  
  •  
  •  
  •  
  •  
  •   
  •