ibatis中iterate的用法(conjunction="or" ",") .

<!-- 删除相应的person记录  -->
  < delete  id =" deletePerson "  parameterClass ="map" >

    delete from 表名 where      sex=#sex#         
        < iterate  prepend ="and"  property =" personList"  open ="("
          close =")"  conjunction="or" >
          age=$personList[].age$
        </ iterate >  
       
  </ delete >

输出sql如下:
delete from 表名 where sex='man'
and (age =11 or age=12)

 

 

 

 

当然你也可以这么写:
P erson.xml如下:

<!-- 删除相应的person记录  -->
  < delete  id =" deletePerson "  parameterClass ="map" >

    delete from 表名 where      sex=#sex#     and age in    
        < iterate  property =" personList"  open ="("
          close =")"  conjunction="," >
          $personList[].age$
        </ iterate >  
       
  </ delete >

输出sql如下:
delete from 表名 where sex='man' and  age in (11 ,12) ;

 

 

3、select WHERE ORDER_CODE IN <iterate open="(" close=")" conjunction="," > #list_test[]# </iterate>中的#list_test[]#意思 ??

答: 传进去一个数组 list_test使用iterator迭代获取<iterate open="(" close=")" conjunction="," > #list_test[]#</iterate>
解析完了就这样select WHEREORDER_CODE IN(list_test[0],list_test[1],list_test[2]....);

 

 

 

 


 

 

来源:http://blog.csdn.net/xymyeah/archive/2009/05/12/4172379.aspx

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值