回答編集履歴

5

修正

2021/02/05 15:16

投稿

sazi
sazi

スコア25327

test CHANGED
@@ -80,7 +80,7 @@
80
80
 
81
81
  group by ITEM_ID
82
82
 
83
- having sum(HATCHU_SURYOU) + ITEM_YOSOKU.YOSOKU_SURYOU <= 0
83
+ having sum(HATCHU_SURYOU) <= ITEM_YOSOKU.YOSOKU_SURYOU
84
84
 
85
85
  )
86
86
 

4

修正

2021/02/05 15:15

投稿

sazi
sazi

スコア25327

test CHANGED
@@ -76,7 +76,7 @@
76
76
 
77
77
  select 1 from FROM ITEM_HATCHU
78
78
 
79
- where ITEM_ID=ITEM_INFO.ITEM_ID
79
+ where ITEM_ID=ITEM_YOSOKU.ITEM_ID
80
80
 
81
81
  group by ITEM_ID
82
82
 

3

追記

2021/02/05 14:15

投稿

sazi
sazi

スコア25327

test CHANGED
@@ -49,3 +49,41 @@
49
49
  とかで良いのではないでしょうか。
50
50
 
51
51
  ※後者の方がコストは低いと思われます。
52
+
53
+
54
+
55
+ > (1)の「TOTAL_HATCHU_SURYOU」を足した時に
56
+
57
+ > 【0またはマイナスになる】ITEM_IDを出力したいです。
58
+
59
+
60
+
61
+ この条件を見落としていました。
62
+
63
+ ```SQL
64
+
65
+ SELECT INFO.ITEM_ID
66
+
67
+ FROM ITEM_INFO
68
+
69
+ INNER JOIN ITEM_YOSOKU
70
+
71
+ ON ITEM_INFO.ITEM_ID = ITEM_YOSOKU.ITEM_ID
72
+
73
+ AND ITEM_YOSOKU.YOSOKU_SURYOU <= 0
74
+
75
+ where exists(
76
+
77
+ select 1 from FROM ITEM_HATCHU
78
+
79
+ where ITEM_ID=ITEM_INFO.ITEM_ID
80
+
81
+ group by ITEM_ID
82
+
83
+ having sum(HATCHU_SURYOU) + ITEM_YOSOKU.YOSOKU_SURYOU <= 0
84
+
85
+ )
86
+
87
+ ```
88
+
89
+ ※検証していないので、エラーになったらごめんなさい。

2

推敲

2021/02/05 14:15

投稿

sazi
sazi

スコア25327

test CHANGED
@@ -1,4 +1,4 @@
1
- HATCHU_SURYOU > 0の前提なら、
1
+ HATCHU_SURYOU > 0の前提なら、集計しなくとも
2
2
 
3
3
  ```SQL
4
4
 

1

推敲

2021/02/05 13:04

投稿

sazi
sazi

スコア25327

test CHANGED
@@ -1,3 +1,5 @@
1
+ HATCHU_SURYOU > 0の前提なら、
2
+
1
3
  ```SQL
2
4
 
3
5
  SELECT distinct ITEM_ID