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