자바 mysql 연동해서 출력값구하기 질문
본문
mysql> select sum(quantity*price) from orders inner join menus
-> on orders.m_number = menus.number
-> where statement=1;
+---------------------+
| sum(quantity*price) |
+---------------------+
| 73000 |
+---------------------+
mysql 이용해서 이런식으로 값을 구한후 sql값을 가져오려면 어떻게해야하죠??
string total;을 만들어서 여기에 값을 넣는다던지 하는법이요..
방법만 알려주셔도 너무 좋습니다( _ _ )
답변 1
커멘드창에서 실행해서 데이터 가져 오는 소스 일부분 인데요.
도움 되실지 모르겠네요.
완전한 소스는 아니고 검색을 해서 보완을 해야 되는 소스
입니다.
sql 은 쿼리 들어가는 변수고
쿼리는 sum(quantity*price) as rst --> 얼라이언스? 인가 주시고...
try { // 1. JDBC 드라이버 로딩
Class.forName(driver); // 2. Connection 객체 생성
con = DriverManager.getConnection(url, user, pw); // DB 연결 // 3. Statement 객체 생성
stmt = con.createStatement(); // 4. SQL 문장을 실행하고 결과를 리턴
// stmt.excuteQuery(SQL) : select // stmt.excuteUpdate(SQL) : insert, update, delete ..
rs = stmt.executeQuery(SQL); // 5. ResultSet에 저장된 데이터 얻기 - 결과가 2개 이상
while (rs.next()) {
String id = rs.getInt("rst");
} //5. ResultSet에 저장된 데이터 얻기 - 결과가 1개
// if(rs.next()) { // // } // else { // // }
} catch (SQLException e) { System.out.println("SQL Error : " + e.getMessage());
} catch (ClassNotFoundException e1) { System.out.println("[JDBC Connector Driver 오류 : " + e1.getMessage() + "]");
} finally { //사용순서와 반대로 close 함
if (rs != null) {
try { rs.close(); } catch (SQLException e) { e.printStackTrace(); }
}
if (stmt != null) {
try { stmt.close(); } catch (SQLException e) { e.printStackTrace(); }
}
if (con != null) {
try { con.close(); } catch (SQLException e) { e.printStackTrace(); }
}
}