如何在Mybatis中的select sql中连接数字类型?

时间:2015-09-16 09:28:56

标签: mysql mybatis ibatis spring-mybatis

我想根据搜索号参数选择一个结果,例如,如果我传递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>

1 个答案:

答案 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那不是参数 - 那个是结果类型。