我在使用
Java计算数据库中的值时遇到了一些麻烦.
我试图从数据库中按日期计算一些值,但它们有小时,分钟和秒.如果我用java.sql.Date搜索它只允许我输入年,月和日,所以带有日期的值:年“ – ”月“-31(小时:分钟:秒!= 00:00:00) “不会被计算在内.
有没有办法为java.sql.Date添加小时,分钟和秒?如果没有,那么它会有什么更好的方法呢?
我的代码:
public static int getAmountPos(Connection con, Integer month, Integer year) {
java.sql.Date date1 = java.sql.Date.valueOf(year+"-"+month+"-01");
java.sql.Date date2 = java.sql.Date.valueOf(year+"-"+month+"-31");
Integer amount = null;
String sql = "SELECT COUNT(*) AS 'cantidad' "
+ " FROM table.point_of_service "
+ " WHERE registration_date between ? AND ?";
PreparedStatement ps = con.getPreparedStatement(sql);
ps.setDate(1, date1);
ps.setDate(2, date2);
ResultSet rs = ps.executeQuery();
if(rs.next()) {
amount = rs.getInt("cantidad");
}
return amount;
}