Mysql
 sql >> Baza danych >  >> RDS >> Mysql

JDBC:Jak pobrać wynik funkcji SQL COUNT ze zbioru wyników?

Nadaj nazwę kolumnie:

ResultSet rs= stmt.executeQuery("select count(name) AS count_name from db.persons where school ='"+sch+"'");
if (rs.next()) {
    int count= rs.getInt("count_name");
}

Możesz również podać numer indeksu kolumny (w przypadku, gdy nie chcesz modyfikować zapytania), który jest oparty na 1. Sprawdź ResultSet#getInt(int columnIndex) :

ResultSet rs= stmt.executeQuery("select count(name) from db.persons where school ='"+sch+"'");
if (rs.next()) {
    int count= rs.getInt(1);
}

Poza tym byłoby lepiej, jeśli użyjesz PreparedStatement do wykonywania zapytań, ma wiele zalet w porównaniu ze zwykłym Statement jak wyjaśniono tutaj:Różnica między oświadczeniem a przygotowanym oświadczeniem . Twój kod będzie wyglądał tak:

String sql = "select count(name) AS count_name from db.persons where school = ?";
PreparedStatement pstmt = con.prepareStatement(sql);
pstmt.setString(1, sch);
ResultSet rs = pstmt.executeQuery();
if (rs.next()) {
    int count = rs.getInt("count_name");
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zmienić nazwy dwóch tabel w jednej atomowej operacji w MySQL?

  2. Różnica między SELECT INTO i INSERT INTO w MySQL

  3. Jak zaimportować plik CSV do tabeli MySQL

  4. Symfony2 tworzy i utrwala relacje encji

  5. jak sprawdzić, czy ciąg wygląda losowo, czy wygenerowany przez człowieka i wymawialny?