回答編集履歴

5

修正

2018/05/17 02:45

投稿

sazi
sazi

スコア25195

test CHANGED
@@ -22,11 +22,11 @@
22
22
 
23
23
  where id in (
24
24
 
25
- select id from テーブル
25
+ select id from テーブル
26
26
 
27
- where 野菜='きゅうり'
27
+ group by id
28
28
 
29
- group by id having count(*)=1
29
+ having sum(case when 野菜='きゅうり' then 1 end)=1
30
30
 
31
31
  )
32
32
 

4

追記

2018/05/17 02:45

投稿

sazi
sazi

スコア25195

test CHANGED
@@ -11,3 +11,23 @@
11
11
  )
12
12
 
13
13
  ```
14
+
15
+ 追記
16
+
17
+ --
18
+
19
+ ```SQL
20
+
21
+ select * from テーブル
22
+
23
+ where id in (
24
+
25
+ select id from テーブル
26
+
27
+ where 野菜='きゅうり'
28
+
29
+ group by id having count(*)=1
30
+
31
+ )
32
+
33
+ ```

3

修正

2018/05/17 02:23

投稿

sazi
sazi

スコア25195

test CHANGED
@@ -1,11 +1,13 @@
1
1
  ```SQL
2
2
 
3
- select id, 野菜 from (
3
+ select * from テーブル
4
4
 
5
- select id, 野菜 from テーブル
5
+ where id in (
6
6
 
7
+ select id from テーブル
8
+
7
- group by id, 野菜 having count(*)=1
9
+ group by id having count(*)=1
10
+
11
+ )
8
12
 
9
13
  ```
10
-
11
- 修正中

2

修正

2018/05/16 16:59

投稿

sazi
sazi

スコア25195

test CHANGED
@@ -1,5 +1,11 @@
1
1
  ```SQL
2
2
 
3
+ select id, 野菜 from (
4
+
5
+ select id, 野菜 from テーブル
6
+
3
- select id, 野菜 from テーブル group by id, 野菜 having count(*)=1
7
+ group by id, 野菜 having count(*)=1
4
8
 
5
9
  ```
10
+
11
+ 修正中

1

修正

2018/05/16 16:53

投稿

sazi
sazi

スコア25195

test CHANGED
@@ -1,7 +1,5 @@
1
1
  ```SQL
2
2
 
3
- select 野菜, min(id) from テーブル group by 野菜 having count(*)=1
3
+ select id, 野菜 from テーブル group by id, 野菜 having count(*)=1
4
4
 
5
5
  ```
6
-
7
- count(*)=1 なのでmin(id)でもmax(id)でも結果は同じ