1
import java.sql.Connection;
2
import java.sql.DriverManager;
3
import java.sql.ResultSet;
4
import java.sql.Statement;
5
6
/**
7
* コントロールブレイク
8
*/
9
public class ControlBreak {
10
11
public static void main(String[] args) {
12
13
try {
14
//データベース接続
15
Class.forName("org.postgresql.Driver");
16
Connection con = DriverManager.getConnection(
17
"jdbc:postgresql:hellodb", "user", "pass");
18
Statement stmt = con.createStatement();
19
//SQL文
20
String sql = "SELECT * FROM TABLE ORDER BY CONTROL_KEY";
21
// SQL実行
22
ResultSet rs = stmt.executeQuery(sql);
23
24
//コントロールキーと合計の初期化
25
String controlKeyOld = null;
26
int total = 0;
27
28
//レコードがなくなるまでループ
29
while (rs.next()) {
30
//コントロールキー取得
31
String controlKeyNow = rs.getString("CONTROL_KEY");
32
//初回ループ時
33
if (controlKeyOld == null) {
34
controlKeyOld = controlKeyNow;
35
}
36
37
//コントロールキーの比較
38
if (controlKeyOld.equals(controlKeyNow)) {
39
//コントロールキーが等しい場合
40
total = +rs.getInt("SALES_AMOUNT");
41
} else {
42
//コントロールキーが異なる場合
43
System.out.println(controlKeyOld + ":" + total);
44
total = rs.getInt("SALES_AMOUNT");
45
}
46
//コントロールキーの退避
47
controlKeyOld = controlKeyNow;
48
}
49
50
System.out.println(controlKeyOld + ":" + total);
51
52
//データベース切断
53
rs.close();
54
stmt.close();
55
con.close();
56
57
} catch (Exception e) {
58
//例外処理
59
e.printStackTrace();
60
}
61
}
62
}
63
import java.sql.Connection;2
import java.sql.DriverManager;3
import java.sql.ResultSet;4
import java.sql.Statement;5

6
/**7
* コントロールブレイク8
*/9
public class ControlBreak {10

11
public static void main(String[] args) {12

13
try {14
//データベース接続15
Class.forName("org.postgresql.Driver");16
Connection con = DriverManager.getConnection(17
"jdbc:postgresql:hellodb", "user", "pass");18
Statement stmt = con.createStatement();19
//SQL文20
String sql = "SELECT * FROM TABLE ORDER BY CONTROL_KEY";21
// SQL実行22
ResultSet rs = stmt.executeQuery(sql);23

24
//コントロールキーと合計の初期化25
String controlKeyOld = null;26
int total = 0;27

28
//レコードがなくなるまでループ29
while (rs.next()) {30
//コントロールキー取得31
String controlKeyNow = rs.getString("CONTROL_KEY");32
//初回ループ時33
if (controlKeyOld == null) {34
controlKeyOld = controlKeyNow;35
}36

37
//コントロールキーの比較38
if (controlKeyOld.equals(controlKeyNow)) {39
//コントロールキーが等しい場合40
total = +rs.getInt("SALES_AMOUNT");41
} else {42
//コントロールキーが異なる場合43
System.out.println(controlKeyOld + ":" + total);44
total = rs.getInt("SALES_AMOUNT");45
}46
//コントロールキーの退避47
controlKeyOld = controlKeyNow;48
}49

50
System.out.println(controlKeyOld + ":" + total);51

52
//データベース切断53
rs.close();54
stmt.close();55
con.close();56

57
} catch (Exception e) {58
//例外処理59
e.printStackTrace();60
}61
}62
}63



浙公网安备 33010602011771号