什么是HQL中的连接以及它应该在何处使用?
已完成教程。其中三个使用如下:
Inner Join
Left Outer Join
Right Outer Join
阅读一些但无法理解的教程。
答案 0 :(得分:1)
加入HQL与SQL joins
相同。在SQL中,join用于连接两个表以返回匹配的数据。在HQL中,连接在父实体和子实体之间(通常在父主键的ForeignKey上)。
人员表
person_id | name | dob
地址表
address_id | address_line1 | state | zip | person_id
SQL Join看起来像
Select * from person p join address a on p.person_id = a.person_id and p.person_id = 10
如果一个人有多个地址,这将返回如下数据
person_id | name | dob | address_id | address_line1 | state | zip
----------------------------------------------------------------------
10 Jack 10/25 22 223 elk blvd AZ 54444
10 Jack 10/25 244 223 NY blvd TX 54344
HQL联接看起来像
from Person p join p.address
并返回Person
个实体,其中包含addresses
列表。
Person{
List address = [ Address{ (this is Object) }, Address{(This is object)}]
}