现在的位置: 首页 > 综合 > 正文

项目中遇到的一个ibatis动态查询

2013年08月01日 ⁄ 综合 ⁄ 共 942字 ⁄ 字号 评论关闭

      网络上有大量的关于ibatis动态查询的语句,本人在此不再狗尾续貂。只说下让我印象很深刻的,其实是走了很大弯路的一个语句。

问题是这样的: ,B为字典表

其中A.type 就是B.Id,现在页面需要这样的展示内容:A.content 、A.type(实际是B.name)

这样的展示页面有两个入口:

1、正常的展示页面  sql语句

2、高级搜索展示  sql语句:

 

当做动态查询的时候sql语句是这样写的:

期间都是更改过几次但是在条件1或者是条件2的情况下总是会出现问题。郁闷啊!  A.type = B.id  可是必须填写的啊。中间还用过1=1等超级变态的用法,还是不好用。

 

 

解决后的sql语句:

open和close的作用就是把动态语句和A.type = B.id分开,实际执行的sql如下:

select  字段  form 表 where   A.type = B.id  and (  type = ? and  name  like  "%参数%" )。

知识很浅,不要见笑,以资鼓励,聊以共勉!

抱歉!评论已关闭.