语句
String sql="select sum(STAT_VALUE) from EP_INDICATORS_HOUR where INDICATORS_ID=:indicatorsId and STAT_DATE>=start and STAT_DATE<end";
Map<String, Object> params = new HashMap<String, Object>();
params.put("indicatorsId", indicatorId);
params.put("start", start);
params.put("end", end);
return template.queryForObject(sql, Double.class, params);
执行的时候报
 PreparedStatementCallback; bad SQL grammar [select sum(STAT_VALUE) from EP_INDICATORS_HOUR where INDICATORS_ID=? and STAT_DATE>=start and STAT_DATE<end]; nested exception is java.sql.SQLException: ORA-00936: missing expression
请大虾们指教下是什么问题

解决方案 »

  1.   

    indicatorId 
    start 
    end
    类型是?
      

  2.   

    STAT_DATE>=start and STAT_DATE<end
    是不是应该:start和:end
      

  3.   

    select sum(STAT_VALUE) from EP_INDICATORS_HOUR where INDICATORS_ID=? and STAT_DATE>=start and STAT_DATE<endselect sum(STAT_VALUE) from EP_INDICATORS_HOUR where INDICATORS_ID=:indicatorsId  and STAT_DATE>=:start and STAT_DATE<:end
      

  4.   

    这个语句有问题:
    String sql="select sum(STAT_VALUE) from EP_INDICATORS_HOUR where INDICATORS_ID=:indicatorsId and STAT_DATE>=start and STAT_DATE<end";start和end前面缺少:号。