Выберите группу с определенным значением - PullRequest
0 голосов
/ 29 апреля 2018

В приведенной ниже таблице я хочу выбрать IDNO, который имеет только один тип 4001, равный IDNO 2001, чтобы я мог определить и обновить total_owe до «0,00».

IDNO    Type    Money       Total_owe
----    -----   --------    ---------
1001    300     900.00      1900.00
1001    300     200.00      1900.00
1001    300     800.00      1900.00
1001    4001    200.00      1900.00

2001    4001    100.00      0.00
2001    4001    100.00      0.00

3001    300     100.00      200.00
3001    300     100.00      200.00

Как изменить приведенный ниже запрос, чтобы он выбирал только IDNO, который имеет только один тип '4001'?

select * from table group by IDNO having count(distinct type) = 1 

1 Ответ

0 голосов
/ 29 апреля 2018

Я ничего не вижу для типа цвета или значения зеленого цвета , но приведенный ниже запрос должен вернуть то, что вы хотите

select *
from YourTable
where IDNO in (select IDNO from YourTable group by IDNO having count(distinct Type) = 1)
and Type = 4001
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...