質問編集履歴

2

初心者アイコン

2016/05/12 01:42

投稿

NK1994
NK1994

スコア11

test CHANGED
File without changes
test CHANGED
@@ -70,7 +70,7 @@
70
70
 
71
71
  00001 4468.00 11926.00 447220.00 2480676.00
72
72
 
73
- 00005 0.00 NULL 0.00 NULL
73
+ 00005 0.00 NULL 0.00 NULL
74
74
 
75
75
  99999 50.00 NULL 5000.00 NULL
76
76
 

1

試したことと、表示結果を追記

2016/05/12 01:42

投稿

NK1994
NK1994

スコア11

test CHANGED
File without changes
test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  今サブクエリを勉強しているのですが、FROM句だけは別名をつけてJOINしなければならないので難しいです。
6
6
 
7
- 実現したいこととしては、地区コードごとの買取点数と買取金額を日付ごとに表示がしたいです。
7
+ 実現したいこととしては、地区コードごとの買取点数と買取金額を日付ごとに表示がしたいです。(FROM句内にサブクエリを使用して)
8
8
 
9
9
 
10
10
 
@@ -12,13 +12,15 @@
12
12
 
13
13
 
14
14
 
15
+
16
+
15
17
  地区コード,買上点数1,買上点数2,買上金額1,買上金額2
16
18
 
17
- 00001
19
+ 00001 17.00 37.00 1705.00 7538.00
18
-
20
+
19
- 00005
21
+ 00005 0.00 NULL 0.00 NULL
20
-
22
+
21
- 99999
23
+ 99999 5.00 NULL 500.00 NULL
22
24
 
23
25
 
24
26
 
@@ -66,11 +68,11 @@
66
68
 
67
69
  地区コード,買上点数1,買上点数2,買上金額1,買上金額2
68
70
 
69
- 00001 4468.00 11926.00 447220.00 2480676.00
71
+ 00001 4468.00 11926.00 447220.00 2480676.00
70
-
72
+
71
- 00005 0.00 NULL 0.00 NULL
73
+ 00005 0.00 NULL 0.00 NULL
72
-
74
+
73
- 99999 50.00 NULL 5000.00 NULL
75
+ 99999 50.00 NULL 5000.00 NULL
74
76
 
75
77
 
76
78
 
@@ -80,6 +82,10 @@
80
82
 
81
83
  ###該当のソースコード
82
84
 
85
+ ↓2つのコードのどちらかをうまく編集したいです。
86
+
87
+
88
+
83
89
  select
84
90
 
85
91
  KYA.地区コード,
@@ -116,6 +122,42 @@
116
122
 
117
123
 
118
124
 
125
+
126
+
127
+ select
128
+
129
+ KYA.地区コード,
130
+
131
+ SUM(k1.買上点数) AS 買上点数1,
132
+
133
+ SUM(k2.買上点数) AS 買上点数2,
134
+
135
+ SUM(k1.買上金額) AS 買上金額1,
136
+
137
+ SUM(k2.買上金額) AS 買上金額2
138
+
139
+ from (
140
+
141
+ (select 顧客コード,買上点数,買上金額 from KYSDAY)as KYSDAY
142
+
143
+ left join(select KYSDAY.顧客コード,kysday.買上点数,kysday.買上金額 from KYSDAY
144
+
145
+ where KYSDAY.日付 = '20141215' ) as k1 on KYSDAY.顧客コード = k1.顧客コード
146
+
147
+ left join (select KYSDAY.顧客コード,kysday.買上点数,kysday.買上金額 from KYSDAY
148
+
149
+ where KYSDAY.日付 = '20150730') as k2 on k1.顧客コード = k2.顧客コード
150
+
151
+ ) as KYSDAY
152
+
153
+ inner join KYA on KYSDAY.顧客コード = KYA.顧客コード
154
+
155
+ group by KYA.地区コード
156
+
157
+ order by KYA.地区コード
158
+
159
+
160
+
119
161
 
120
162
 
121
163
  ###試したこと
@@ -123,3 +165,89 @@
123
165
  上のコードのJOINや結合条件をいろいろいじってみましたがうまくいきません。
124
166
 
125
167
  どうか皆様のお力をお貸しください。
168
+
169
+ ※今回はFROM句内のサブクエリの勉強なのでFROM句内の結合をうまく表示させたいです。
170
+
171
+
172
+
173
+ ↓の2つの表を平行に表示させる感じにしたいです。
174
+
175
+ SELECT
176
+
177
+ KYA.地区コード
178
+
179
+ , sum(KYSDAY.買上点数)as 買上点数
180
+
181
+ , sum(KYSDAY.買上金額)as 買上金額
182
+
183
+ FROM
184
+
185
+ KYSDAY
186
+
187
+ INNER JOIN KYA
188
+
189
+ ON KYA.顧客コード = KYSDAY.顧客コード
190
+
191
+ WHERE
192
+
193
+ KYSDAY.日付 = '20141215'
194
+
195
+ group BY
196
+
197
+ KYA.地区コード
198
+
199
+
200
+
201
+ 地区コード,買上点数,買上金額
202
+
203
+ 00001 17.00 1705.00
204
+
205
+ 00005 0.00 0.00
206
+
207
+ 99999 5.00 500.00
208
+
209
+
210
+
211
+ SELECT
212
+
213
+ KYA.地区コード
214
+
215
+ , sum(KYSDAY.買上点数)as 買上点数
216
+
217
+ , sum(KYSDAY.買上金額)as 買上金額
218
+
219
+ FROM
220
+
221
+ KYSDAY
222
+
223
+ INNER JOIN KYA
224
+
225
+ ON KYA.顧客コード = KYSDAY.顧客コード
226
+
227
+ WHERE
228
+
229
+ KYSDAY.日付 = '20150730'
230
+
231
+ group BY
232
+
233
+ KYA.地区コード
234
+
235
+
236
+
237
+ 地区コード,買上点数,買上金額
238
+
239
+ 00001 37.00 7538.00
240
+
241
+
242
+
243
+ 表示結果としては↓を目指しています。
244
+
245
+
246
+
247
+ 地区コード,買上点数1,買上点数2,買上金額1,買上金額2
248
+
249
+ 00001 17.00 37.00 1705.00 7538.00
250
+
251
+ 00005 0.00 NULL 0.00 NULL
252
+
253
+ 99999 5.00 NULL 500.00 NULL