Đặt tên cho cột:
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");
}
Bạn cũng có thể chuyển số chỉ mục của cột (trong trường hợp bạn không muốn sửa đổi truy vấn của mình) dựa trên 1. Kiểm tra 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);
}
Ngoài ra, sẽ tốt hơn nếu bạn sử dụng PreparedStatement
để thực thi các truy vấn của bạn, nó có nhiều ưu điểm hơn Statement
đơn giản như được giải thích ở đây: Sự khác biệt giữa Statement và PreparedStatement
. Mã của bạn sẽ giống như sau:
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");
}