質問編集履歴

1

コード追記しました。

2017/04/26 09:49

投稿

cd987456
cd987456

スコア33

test CHANGED
File without changes
test CHANGED
@@ -181,3 +181,67 @@
181
181
 
182
182
 
183
183
  コードを教えて下さい。
184
+
185
+
186
+
187
+ 追記コードです。
188
+
189
+ ```
190
+
191
+ Dim strSQL As String
192
+
193
+
194
+
195
+ Dim fild1, fild2, fild3, fild4, fild5 As String
196
+
197
+ Dim wTbl,wTbl5 As String
198
+
199
+
200
+
201
+ fild1 = "CODE"
202
+
203
+ fild2 = "NAME"
204
+
205
+ fild3 = "KCODE"
206
+
207
+ fild4 = "KUBUN"
208
+
209
+ fild5 = "SHOYOU"
210
+
211
+
212
+
213
+ strSQL = "select tmp.CODE,tmp.NAME,tmp.KCODE,tmp.KNAME,tmp.KUBUN,tmp.SYOYOU"
214
+
215
+
216
+
217
+ strSQL = strSQL & " from (select " & wTbl & "." & fild1 & " CODE,H1." & fild2 & " NAME," & wTbl & "." & fild3 & " KCODE,H2." & fild2 & " KNAME," & wTbl5 & "." & fild4 & " KUBUN," & wTbl5 & "." & fild5 & " SHOYOU"
218
+
219
+ strSQL = strSQL & ", MAX(" & wTbl5 & "." & fild5 & ") OVER(PARTITION BY " & wTbl & "." & fild1 & "," & wTbl5 & "." & fild4 & ") MAX_SHOYOU"
220
+
221
+ strSQL = strSQL & " from " & wTbl
222
+
223
+
224
+
225
+ strSQL = strSQL & " left join " & wTbl2 & " H1"
226
+
227
+ strSQL = strSQL & " on " & wTbl & "." & fild1 & " = H1." & fild1
228
+
229
+
230
+
231
+ strSQL = strSQL & " left join " & wTbl2 & " H2"
232
+
233
+ strSQL = strSQL & " on " & wTbl & "." & fild3 & " = H2." & fild1
234
+
235
+
236
+
237
+ strSQL = strSQL & " left join " & wTbl5
238
+
239
+ strSQL = strSQL & " on " & wTbl & "." & fild1 & " = " & wTbl5 & "." & fild1 & " and " & wTbl5 & "." & fild4 & " in ('J','T')) tmp"
240
+
241
+
242
+
243
+ strSQL = strSQL & " where tmp.SHOYOU = tmp.MAX_SHOYOU "
244
+
245
+
246
+
247
+ ```