sql是关系数据库查询语言,面对的数据库;
而hql是Hibernate这样的数据库持久化框架提供的内置查询语言,虽然他们的目的都是为了从数据库查询需要的数据,但sql操作的是数据库表和字段,
而作为面向对象的hql操作的则是持久化类及其属性。
举一个简单的例子
sql语句
select * from tb_goods where id in (select goodsid from tb_getuse group by goodsid)
tb_goods通过goodsid和tb_getuse相关联,如何用hql写上述sql语句
如果A是B的父表。
b.A.id 中间的A是B表的映射文件中对应的A的名字。
from B as b where b.A.id in ( select a.id from A as a)