Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Nhóm theo số lượng và tổng số

Bạn có thể sử dụng case biểu thức dựa trên @Month :

SELECT   ProductCode, 
         SUM (CASE WHEN MONTH(EntryDate) = @Month THEN Quantity ELSE 0 END) 
           AS MonthCount,
         SUM (Quantity) AS TotalConount
FROM     ProductMaster
GROUP BY ProductCode

CHỈNH SỬA:
Để trả lời câu hỏi đã chỉnh sửa, bạn có thể sử dụng kỹ thuật tương tự với count thay vì sum :

SELECT   ProductCode, 
         COUNT (CASE WHEN MONTH(EntryDate) = @Month THEN Quantity ELSE NULL END) 
           AS MonthCount,
         COUNT (*) AS TotalConount
FROM     ProductMaster
GROUP BY ProductCode


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tìm chỉ mục của lần xuất hiện cuối cùng của một chuỗi con bằng T-SQL

  2. Định dạng ngày / giờ tùy chỉnh trong SQL Server

  3. Tại sao truy vấn này chậm lần đầu tiên sau khi tôi bắt đầu dịch vụ?

  4. Chức năng định dạng ngày của SQL Server

  5. Khmer Unicode, tiếng Anh và Microsoft SQL Server 2008 dẫn đến dấu hỏi