ibatis2 中select中的动态查询

ibatis2 中select中的动态查询

问题描述:

SELECT
            LOGDATE   logdate,
            <dynamic>
                <isEqual property="isMember" compareValue="true" close=",">
                           NAME  name
                </isEqual>
            </dynamic>
                         AGE    age
        FROM t

 如题,在select中使用动态查询,isMember是Boolean类型的,结果就是isMember为true的时候还是选不到name这一列.

这样写有错吗?

加一个remapResults="true",具体作用请谷歌,主要是因为缓存了结果集获取的逻辑过程,第一次查过以后,ibatis一直认为只有两个字段,根本不会考虑去取第3个字段

另外你可以去掉dynamic这个标签,直接用里面的isequal就行了

什么数据库,为什么字段名要写两遍?

lz是想isMember为true的数据吧?

该成
SELECT
LOGDATE logdate,
NAME name,
AGE age
from t


isMember = true