什么是基于另一个表中的数据从一个表中获取数据的正确Hibernate查询?

时间:2012-02-11 17:55:28

标签: hibernate join hql

我有两个表,Device包含设备的详细信息,包括是否已分配,以及CustDevice,其中包含已分配给客户的设备的附加信息。

如果已将记录分配给特定客户,我需要从Device表中选择记录。

我对查询的第一次天真的尝试是:

来自设备的

,其中Device.deviceId = CustDevice.deviceId和Device.status = 2,CustDevice.accountId = 33

这显然不起作用,但它解释了我想要做的关系。 我尝试在混合中添加连接,但我不知道连接两个表的正确语法。

我试过了:

来自Device dev join dev.deviceId CustDevice,其中dev.deviceId = CustDevice.deviceId和dev.deviceStatus = 2,CustDevice.accountId = 33

但这也不起作用。 任何人都可以帮我解决这个问题? 感谢

1 个答案:

答案 0 :(得分:0)

这听起来像是一个左连接,如果它被引用,那就是所有表和连接表。

以下是关于Hibernate中左连接的文章。

http://www.jairrillo.com/blog/2009/01/29/how-to-use-left-join-in-hibernate-criteria/