※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

JAVADB ヒット件数

SELECT文でヒットした件数のもとめ方

  • ResultSet を先頭から順番に読み込んで、自分で件数をカウントする。
Statement stmt = .... // Statement オブジェクトを取得する処理。
ResultSet rs = stmt.executeQuery("SELECT * FROM 表名 WHERE 条件式");
int count = 0;
while(rs.next()) {
  count++;
}
   
  • ResultSet を作成する SELECT 文に COUNT(*) を入れておいて、その値を参照する。
Statement stmt = .... // Statement オブジェクトを取得する処理。
ResultSet rs = stmt.executeQuery("SELECT COUNT(*) FROM 表名 WHERE 条件式");
rs.next();
// 行数を取得する。
int count = rs.getInt(1);
   
  • JDBC 2.0 とスクロール可能な ResultSet が使える場合は、カーソルを最終行に移動して、ResultSet#getRow() メソッドを呼び出す。
Connection con = .... // データベースとの接続を確立する処理。
// 以下の Connection#createStatement() メソッドが実行可能かどうか
// は JDBC ドライバの実装に依存します。
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
ResultSet rs = stmt.executeQuery("SELECT * FROM 表名 WHERE 条件式");
rs.last();
int count = rs.getRow();