Как посчитать вхождение определенного значения в каждом разделе? - PullRequest
1 голос
/ 28 июня 2019

Мне нужно посчитать вхождение -1 значения для каждого раздела таблицы.Если раздел содержит только две строки, я мог бы использовать функции min, max, но для разделов с более чем двумя строками это не решение.

CREATE TABLE #Data(ID int,name_of_institution varchar(200),wasko_id int)


INSERT INTO #Data(ID,name_of_institution,wasko_id)


SELECT 4822,'Bailiff xxx',-1 union all

SELECT 4820,'Bailiff xxx',-1 union all

SELECT 4819,'Bailiff xxx',2332 union all

 SELECT 4700,'Bailiff yyy',-1 union all

SELECT 4701,'Bailiff yyy',222 


select DENSE_RANK() over (order by name_of_institution) as DR,* from #Data

Я ожидаю вывод 2 для раздела 'Bailiff xxx' и 1для раздела «Судебный пристав-ггг».

1 Ответ

2 голосов
/ 28 июня 2019

Используйте Excel как Sumif: Сумма условной вставки, где на True вы суммируете 1, а на False вы суммируете 0: iif(condition, 1, 0)

select name_of_institution, sum(iif(wasko_id = -1, 1, 0)) as DR 
from #Data 
group by name_of_institution
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...