回答編集履歴

2 typo

yambejp

yambejp score 45712

2018/05/17 10:32  投稿

- 元データ
```SQL
create table tbl (id int,yasai varchar(10));
insert into tbl values
(1,'トマト'),
(1,'きゅうり'),
(2,'きゅうり'),
(3,'レタス'),
(3,'きゅうり'),
(3,'きゃべつ'),
(4,'トマト'),
(5,'トマト'),
(5,'きゃべつ'),
(6,'きゅうり'),
(7,'きゅうり'),
(7,'きゅうり');
```
- 検索
```
select id from tbl group by id
having sum(yasai='きゅうり')=1
and sum(yasai!='きゅうり')=0
```
ちなみに「きゅうりしか含まない」となると
```
select id from tbl group by id
having sum(yasai='きゅうり')
having sum(yasai='きゅうり')>0
and sum(yasai!='きゅうり')=0
```
1 追記

yambejp

yambejp score 45712

2018/05/17 10:31  投稿

- 元データ
```SQL
create table tbl (id int,yasai varchar(10));
insert into tbl values
(1,'トマト'),
(1,'きゅうり'),
(2,'きゅうり'),
(3,'レタス'),
(3,'きゅうり'),
(3,'きゃべつ'),
(4,'トマト'),
(5,'トマト'),
(5,'きゃべつ'),
(6,'きゅうり');
(6,'きゅうり'),
(7,'きゅうり'),
(7,'きゅうり');
```
- 検索
```
select id from tbl group by id
having sum(yasai='きゅうり')=1
and sum(yasai!='きゅうり')=0
```
```
ちなみに「きゅうりしか含まない」となると
```
select id from tbl group by id
having sum(yasai='きゅうり')0
and sum(yasai!='きゅうり')=0
```

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る