hql两表查询怎么写?
表A的字段1和表B的主键值相同,表A的数字编号在表B中也有,并且表B里有字段名称,现在我想通过表A的字段1拿到表B的字段名称。现在用SSH开发,需要写出来hql语句,要求联查,怎么写?麻烦说清楚点,言之有理,即可得分。
[解决办法]
hql跟sql基本写法是一样的,hql对应的是映射文件,sql是直接查表,如果hql映射文件是以一对多等形式,那就只要查主表,对应的表数据会自动关联出来,不过程序会比较慢.如果实在不会hql,就按你的sql写法:Query query = getSession().createSQLQuery(hql.toString());
return query.list();
[解决办法]
hql = "from 表A where A.id=xxx";
List<表A> al = find(hql);
表B = ((表A)al.get(0)).表B;
[解决办法]