Giới thiệu về SQL Q&A #1

Yêu cầu: Lấy ra top 10 sản phẩm bán ra nhiều nhất vào tháng trước. Bảng dữ liệu trả về có các thông tin về thứ hạng, giá bán ra thấp nhất, tổng doanh thu, doanh thu trung bình mỗi ngày, số đơn hàng.

Số đầu tiên, mình sẽ bắt đầu với bài toán rất phổ biến, thường gặp với các doanh nghiệp. Trong vai trò của một Data Analyst bạn nhận được yêu cầu trích xuất, tổng hợp dữ liệu bán hàng của công ty và xuất thành báo cáo theo nhu cầu và cụ thể trong tình huống này là top 10 sản phẩm bán ra nhiều nhất vào tháng trước.

Các phòng ban, nghiệp vụ có thể dùng dữ liệu này để đánh giá hiệu quả bán hàng tháng trước, dự báo nhu cầu để chuẩn bị nguồn cung đầy đủ hay xây dựng chiến lược bán hàng tháng sau nhắm tới các sản phẩm này hoặc các sản phẩm có tính chất tương tự,…

Bảng dữ liệu trả về có các thông tin về thứ hạng, giá bán ra thấp nhất, tổng doanh thu, doanh thu trung bình mỗi ngày, số đơn hàng.

Ở đây mình sẽ minh họa giải quyết bằng nguồn dữ liệu mẫu quen thuộc là AdventureWorks2019 trên SQL Server.

Video hướng dẫn: Link

Thông tin liên quan

Các bảng sẽ dùng trong CSDL AdventureWorks2019

  • Bảng Sales.SalesOrderHeader: Đơn hàng
  • Bảng Sales.SalesOrderDetail: Đơn hàng chi tiết
  • Bảng Production.Product: Sản phẩm
  • Bảng Production.ProductSubCategory: Nhóm hàng
  • Bảng Production.ProductCategory: Ngành hàng

Các hàm và câu lệnh SQL sử dụng

  • DATEADD, DATEDIFF
  • MIN, SUM, COUNT, JOIN, GROUP BY, ORDER BY
    • Cách 1: TOP(N)
    • Cách 2: RANK() + OVER + ORDER BY

👉 Tham gia ngay cộng đồng SQL Vietnam để thảo luận và chia sẻ kiến thức về SQL.

👉 Theo dõi KPIM Blog để tìm kiếm các kiến thức về SQL.

👉 Theo dõi Hoàng Hải Data để xem thông tin về các SQL challenge.

Đọc thêm: SQL Q&A #2