В mysql я использую этот sql, и он работает нормально.
select * from student where CREATE_TIME>=DATE_SUB(curdate(),INTERVAL 24 HOUR)
Теперь я хочу использовать дату в качестве параметра, поэтому я использую NamedParameterJdbcTemplate
, Если я передаю дату как «2020-05-30», она также работает нормально. Но когда я передаю «CURRENT_DATE» или «curdate ()», поиск результатов не выполняется. Как изменить код?
NamedParameterJdbcTemplate nameJdbc = new NamedParameterJdbcTemplate(jdbcTemplate);
Map<String,Object> paramMap = new HashMap<String, Object>();
//dateStr when '2020-05-30' is ok,'CURRENT_DATE' is not ok;
paramMap.put("dateStr",dateStr);
String sql = "SELECT *"
+ " FROM student where CREATE_TIME>=DATE_SUB(:dateStr,INTERVAL 24 HOUR)" ;
return nameJdbc.query(sql,paramMap,
new BeanPropertyRowMapper<>(Student.class));