我想根据搜索号参数选择一个结果,例如,如果我传递7
,我想要像select * from student where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(CREATETIME)
这样的sql语句,现在在Mybatis中,我试着像这样写,并将${pd.intervalDay}
更改为#{pd.intervalDay}
,但这是错误的。如何更改?
<!-- pd is hasmap type -->
<select id="selectstudentresult" parameterType="page" resultType="pd">
select * from student
<where>
<if test="pd.intervalDay!=null">
and DATE_SUB(CURDATE(), INTERVAL ${pd.intervalDay} DAY) <= date(a.UPDATETIME)
</if>
</where>
答案 0 :(得分:0)
<select id="selectstudentresult" parameterType="page" resultType="pd">
select * from student
<where>
<if test="intervalDay!=null">
and DATE_SUB(CURDATE(), INTERVAL #{intervalDay} DAY) <= date(a.UPDATETIME)
</if>
</where>
使用上面的代码,因为你发送参数为页面(pojo类),你可以直接访问变量..而且不需要添加pd.intervalday
那不是参数 - 那个是结果类型。