说明:在mybatis 的sql里不是不能写注释,而是注释不能有#{},mybatis仍旧会把#{}算成一个带注入的参数
如代码段2所示,mysql数据库更换为oracle数据库时,#{date}需要明确jdbcType,而该代码段中仅将适用于mysql的sql注释,依旧会报同样的错,最好是将注释的sql删除。
<select id="slectSlagsteelRatioByDate" resultType="java.lang.Double">
-- select slagsteel_ratio FROM process_history WHERE real_time <= #{date} AND furnace_num = #{furnaceNum}
-- ORDER BY real_time DESC limit 0,1
select slagsteel_ratio FROM(
select slagsteel_ratio FROM process_history WHERE real_time <= #{date,jdbcType=TIMESTAMP} AND furnace_num = #{furnaceNum}
ORDER BY real_time DESC ) WHERE ROWNUM = 1
</select>