質問編集履歴

1

コードブロックを利用しました。

2018/04/17 05:15

投稿

snooooopy_16
snooooopy_16

スコア15

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- ■質問したい事
1
+ ### ■質問したい事
2
2
 
3
3
  今下記のように実装をしているのですが,ループの中でクエリを発行することがコード規約では禁止されており,出来ればループの中で更に検索という形ではなく,■DBのデータ状態からその結果を上手く取り出し,■最終的に取得したいデータ状態にしたいと考えております。(ややこしいのはHRGはSEQが同値であっても複数データ存在することがあることです。。ALPはSEQが同値であれば必ず同値です。)
4
4
 
@@ -8,33 +8,37 @@
8
8
 
9
9
 
10
10
 
11
- ■DBのデータ状態
11
+ ### ■DBのデータ状態
12
12
 
13
13
  |SEQ|ALP|HRG|
14
14
 
15
- |1 |A |あ |
15
+ |1 |A |あ |
16
16
 
17
- |1 |A |い |
17
+ |1 |A |い |
18
18
 
19
- |1 |A |う |
19
+ |1 |A |う |
20
20
 
21
- |2 |B |な |
21
+ |2 |B |な |
22
22
 
23
- |2 |B |に |
23
+ |2 |B |に |
24
24
 
25
- |3 |C |ら |
25
+ |3 |C |ら |
26
26
 
27
27
 
28
28
 
29
- ■最終的に取得したいデータ状態
29
+ ### ■最終的に取得したいデータ状態
30
30
 
31
31
  [1,A,(あ,い,う)],[2,B,(な,に)],[3,C,(ら)]
32
32
 
33
33
 
34
34
 
35
- ■現在の実装
35
+ ### ■現在の実装
36
36
 
37
37
  ①まずSEQとALPのみSELECTして下記データ状態を作成し,SEQとALPを一意にして取得(SEQNOでDISTINCTしている)
38
+
39
+ ```java
40
+
41
+ SELECT DISTINCT SEQ FROM TABLE WHERE SEQ='1' OR SEQ='2' OR SEQ='3' ORDER BY SEQ ASC
38
42
 
39
43
  |SEQ|ALP|
40
44
 
@@ -44,11 +48,11 @@
44
48
 
45
49
  |3 |C |
46
50
 
47
- SELECT DISTINCT SEQ FROM TABLE WHERE SEQ='1' OR SEQ='2' OR SEQ='3' ORDER BY SEQ ASC
51
+ ```
48
-
49
-
50
52
 
51
53
  ②①の結果をループし,SEQを取得(例としてSEQgaSEQが1の時)
54
+
55
+ ```java
52
56
 
53
57
  while(query.next()){
54
58
 
@@ -75,3 +79,5 @@
75
79
   }
76
80
 
77
81
  }
82
+
83
+ ```