Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Групиране по брой и общ брой

Можете да използвате case израз, базиран на @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

РЕДАКТИРАНЕ:
За да отговорите на редактирания въпрос, можете да използвате същата техника с count вместо 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. Най-доброто решение за пейджинг, използващо SQL Server 2005?

  2. Excel в SQL Server с Microsoft.ACE.OLEDB.12.0

  3. Схема на база данни, автоинкремент

  4. Позоваване на псевдоним другаде в списъка SELECT

  5. Как да вмъкнете редове в таблица на SQL Server чрез GUI за редактиране на редове на таблица - SQL Server / TSQL урок, част 101