- [POWER AUTOMATE] Hướng dẫn gởi tin nhắn zalo từ file Excel - No code
- [C#] Chia sẻ code lock và unlock user trong domain Window
- [SOFTWARE] Giới thiệu bộ phần mềm tính Kết Cấu Thép HatteSale, Mộng Đơn, Dầm, Sàn, Móng Cọc, Vách, Xà Gồ, Tính Tải Trọng
- [DEVEXPRESS] Vẽ Biểu Đồ Stock Chứng Khoán - Công Cụ Thiết Yếu Cho Nhà Đầu Tư trên Winform
- [C#] Hướng dẫn bảo mật ứng dụng 2FA (Multi-factor Authentication) trên Winform
- [C#] Hướng dẫn convert HTML code sang PDF File trên NetCore 7 Winform
- [C#] Hướng dẫn viết ứng dụng chat với Gemini AI Google Winform
- Hướng dẫn khóa file bằng nhiều process id, không cho xóa tập tin
- Hướng dẫn cách tạo Product Id cho ứng dụng phần mềm XXXXX-XXXXX-XXXXX-XXXXX
- [SQLSERVER] Hướng dẫn tạo script sql từ ứng dụng Sqlserver management Studio
- [C#] Hướng dẫn sử dụng thư viện AutoITx lấy id và password Ultraviewer trên winform
- [VB.NET] Hướng dẫn lấy thông tin tài khoản đăng nhập windows và khởi động lại ứng dụng ở chế độ Administrator
- [C#] Sử dụng thư viện Polly gửi lại request api khi request bị lỗi hay rớt mạng
- [DEVEXPRESS] Chia sẻ source code tạo báo cáo report in tem nhãn label trên C# winform
- [DEVEXPRESS] Hướng dẫn vẽ biểu đồ Bar Chart trên Winform
- [C#] Tạo form đăng nhập và đăng ký với hiệu ứng Sliding Animation Effect
- [C#] Hướng dẫn tạo thanh toán đơn hàng qua mã vạch VietQR sử dụng API PayOS hoàn toàn miễn phí
- [C#] Hướng dẫn ghi log ra RichTextBox giống Console trên Winform sử dụng thư viện Serilog
- [C#] Hướng dẫn cách tạo mã QR Code trên file Excel
- [VB.NET] Gởi tin nhắn và file đính kèm qua ứng dụng gởi tin nhắn Whats App
[DATABASE] Hướng dẫn truy vấn lấy Top N dữ liệu trên sqlserver
Xin chào các bạn bài viết hôm nay, mình chia sẻ các bạn cách thực hiện truy vấn lấy Top N số dòng và tất cả dữ liệu còn lại sẽ đưa vào Other để vẽ biểu đồ báo cáo.
[DATABASE] Calculating Top N Items and Aggregating (sum) the remainder into All Other
Ví dụ: chúng ta có bảng dữ liệu như sau:
Ở hình trên, các bạn thấy dữ liệu mình gồm 20 trường dữ liệu:
Nếu bây giờ, chúng ta trình bày hết chúng vào 1 biểu đồ hình tròn thì rất khó nhìn.
Và yêu cầu ở đây, là ví dụ Sếp chỉ muốn nhìn thấy 5 hoặc N giá trị lớn nhất, còn tất cả giá trị còn lại đưa vào dữ liệu "All Others".
Chúng ta sẽ thực hiện truy vấn dữ liệu như sau:
WITH TopX
AS (SELECT TOP 10 -- Thay đổi xem số lượng ở đây
name,
qty
FROM dbo.Product
ORDER BY qty DESC)
SELECT *
FROM TopX
UNION ALL
SELECT 'All other' AS name,
SUM(qty) AS qty
FROM Product
WHERE name NOT IN
(
SELECT name FROM TopX
);
Ở lệnh trên, mình chỉ xuất hiện 10 dòng, các bạn có thể thay đổi số item muốn view ở đoạn comment, mình đã ghi chú lại ở trên.
Kết quả của truy vấn trên chúng ta sẽ được dữ liệu như ở bên dưới đây:
Thanks for watching!