对于下面这样的包含子查询的语句,在ibatis中怎么处理?只能拼SQL了?
select * from agent where province_code in(select province_code from operator_biz_province where operator_id =%d)
[b]问题补充:[/b]
province_code in(select province_code from operator_biz_province where operator_id =%d) 是变化的,比如
operator_id in(....)
[b]问题补充:[/b]
我现在是做成:
select * from agent $conditions$
conditions的值是自己拼SQL语句,再通过map传到ibatis中。
想知道有没有更好的方法
ibatis中SQL子查询的使用
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- lggegegmail 2008-12-02 17:08关注
这样的, 你可以传operator_id的list进来,
iBATIS是有一个iterator的, 可以循环list.我的代码的参数是传入A对象,
[code="java"]class A {
List status;
}<isNotNull property="status"> <isNotEmpty prepend="AND " property="status"> <iterate property="status" open=" STATUS IN (" close=")" conjunction=", "> #status[]# </iterate> </isNotEmpty> </isNotNull>
[/code]
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 c程序不知道为什么得不到结果
- ¥40 复杂的限制性的商函数处理
- ¥15 程序不包含适用于入口点的静态Main方法
- ¥15 素材场景中光线烘焙后灯光失效
- ¥15 请教一下各位,为什么我这个没有实现模拟点击
- ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
- ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
- ¥20 有关区间dp的问题求解
- ¥15 多电路系统共用电源的串扰问题
- ¥15 slam rangenet++配置