select * from cgccy_shipbasic_registstats where ship_name in(
select  ship_name from cgccy_shipbasic_registstats group by ship_name having count(*)>1
) or ship_no in (
select  ship_no from cgccy_shipbasic_registstats group by ship_no having count(*)>1
) order by ship_name,ship_no
这句话在hibernate中执行不了 怎么转换下那

解决方案 »

  1.   

    直接用createSQLQuery();方法可以直接执行sql.
    不过你要用createQuery()的方法的话,你需要把表的名字写成对象的名字,字段也是对象的属性。不能直接select * from .....;要么就 from ......就好了,要么就 select 属性1,属性2 from .....
      

  2.   

    用hibernate要写映射文件,hql里的表全部换成映射的类名,字段全部换成映射类的属性。。
      

  3.   

    这个也可。如果要变成hql你就直接把表名 和字段名换成对象名和字段名。你要是有分组和帅选的话 你可以吧select也写上 不要查询所有的。希望对你有用