怎么在mybatis的动态sql中传递int类型参数?

昵称是可以中文吗 2015-09-16 11:04:21
我写了一个sql语句,当传入7时,产生的sql语句为
select * from student where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(CREATETIME)
,现在改成参数是一个int类型的参数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>
...全文
2744 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
吹牛不用嘴 2017-09-12
  • 打赏
  • 举报
回复
mybatis 里面< > 要转义的
baidu_31006959 2015-09-17
  • 打赏
  • 举报
回复
int 改成Integer; <if test="pd.intervalDay!=null"> 有问题吧。
  • 打赏
  • 举报
回复
这个函数没问题,我也这样用了 如果你这样不行的话,建议先在程序中进行日期的加减计算,然后再传入sql中进行查询
suciver 2015-09-17
  • 打赏
  • 举报
回复
and DATE_SUB(CURDATE(), INTERVAL ${pd.intervalDay} DAY) <= date(a.UPDATETIME) and去掉

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧