这几天做一个功能模块牵涉到 两个表连接 多条件查询,但只需要查找出其中一个表的字段。
用sql语句 在MySQL 客户断了 是这样写的 可以查:
select a.* from (select * from t_jbxx_xsjbxx where rxnj=2014 and xm like '%张%' or xh like '%张%' and sfxs=1 and zxxxid=1) a , (select * from t_xjgl_xjxx where xn=2014 and xq_m=274 and bjxxid=3) b where
a.xsxxid=b.xsxxid
但把把放入后台 java代码里去 调用sql 查询方法,能够查,但查出来的集合不能强转成自己用java代码定义的vo
如果要转成对应的vo 必须要采用hql 语句查询!
最后进过多番调整,写成这样了:
String hql="select DISTINCT a from TJbxxXsjbxx a , TXjglXjxx b where a.xsxxid=b.xsxxid and a.rxnj="+nf+" and (a.xm like '%"+studentname+"%' or a.xh like '%"+studentname+"%') and a.sfxs=1 and a.zxxxid="+zhuanye+" and b.xn="+nj+" and b.xqM="+xueqi+" and b.bjxxid="+banji;
OK! 问题解决!