[java] Apache Derby를 사용하여 데이터베이스에서 특정 기간 동안의 데이터를 집계하는 방법에 대해 알려주세요.
Apache Derby는 Java 기반의 경량 데이터베이스 관리 시스템입니다. 이를 사용하여 특정 기간 동안 데이터를 집계하는 방법을 알아보겠습니다.
- Derby 데이터베이스 연결 설정
String url = "jdbc:derby:myDB;create=true"; Connection conn = DriverManager.getConnection(url);
- 데이터베이스에 테이블 생성
Statement stmt = conn.createStatement(); String sql = "CREATE TABLE data (id INT, value INT, date DATE)"; stmt.executeUpdate(sql);
- 데이터 입력
PreparedStatement pstmt = conn.prepareStatement("INSERT INTO data (id, value, date) VALUES (?, ?, ?)"); pstmt.setInt(1, 1); pstmt.setInt(2, 10); pstmt.setDate(3, java.sql.Date.valueOf("2022-01-01")); pstmt.executeUpdate();
- 특정 기간의 데이터 집계
PreparedStatement pstmt = conn.prepareStatement("SELECT SUM(value) FROM data WHERE date >= ? AND date <= ?"); pstmt.setDate(1, java.sql.Date.valueOf("2022-01-01")); pstmt.setDate(2, java.sql.Date.valueOf("2022-01-31")); ResultSet rs = pstmt.executeQuery(); rs.next(); int sum = rs.getInt(1);
위의 예제에서는 “data”라는 테이블에서 “value” 컬럼의 값을 특정 기간(“2022-01-01”부터 “2022-01-31”) 동안 집계하고 있습니다. 집계된 결과는 “sum” 변수에 저장됩니다.
Apache Derby를 사용하여 데이터베이스에서 특정 기간 동안의 데이터를 집계하는 방법에 대해 알아보았습니다. 위의 코드를 참고하여 프로젝트에 적용해 보세요.
추가 참고 자료: