Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Kelompokkan Berdasarkan Hitungan dan Jumlah Total

Anda bisa menggunakan case ekspresi berdasarkan @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

EDIT:
Untuk menjawab pertanyaan yang diedit, Anda dapat menggunakan teknik yang sama dengan count bukannya 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. CONCAT_WS() untuk SQL Server

  2. Mengapa NULL =NULL dievaluasi menjadi false di SQL server

  3. Bagaimana saya bisa menyelaraskan bidang varchar ke kanan di TSQL?

  4. Anatomi kebuntuan SQL Server dan cara terbaik untuk menghindarinya

  5. Analog mutex dalam SQL?