Выберите данные, которые имеют все строки, разделенные запятыми - PullRequest
0 голосов
/ 14 марта 2019

У меня есть таблица условий вроде

id   condition   member-id
 1    Fall         A1452
 2    Fall         A1453
 3    Dementia     A1452
 4    Dementia     A1453
 5    Fall         A1450
 6    Headaches    A1453

Теперь я хочу передать условия в качестве параметра типа "Падение, деменция" Мне нужны те идентификаторы участников, которые имеют Падение и Деменция Состояние

select * from conditions where condition IN('Fall,Dementia')

Это возвращает 3 записи, но мне нужны те, у кого есть обе?

помните, что "Падение, Деменция" динамично, оно может измениться на "Падение, Деменция, Головные боли"

Ответы [ 2 ]

2 голосов
/ 14 марта 2019

использовать условное агрегирование

 select MemberId from 
 conditions
 where condition IN('Fall','Dementia')
 group by MemberId
 having count(distinct condition )=2 
0 голосов
/ 15 марта 2019
 select distinct MemberId 
 from StackOverflow4
 where Condition in ('Fall','Dementia')
 group by memberId
 having count(MemberId)=2 
...