HQL查询语言

Hibernate配备了一种非常强大的查询语言HQL(Hibernate Query Language),这种语言看上去很像SQL。但是不要被语法结构 上的相似所迷惑,HQL是非常有意识的被设计为完全面向对象的查询,它可以理解如继承、多态 和关联之类的概念。
1.大小写敏感性问题
使用完全大写的关键字会使查询语句 的可读性更强,但当把查询语句嵌入到Java语句中的时候使用大写关键字比较难看。
2.from子句
from Cat as cat
这个语句把别名cat指定给类Cat 的实例, 这样我们就可以在随后的查询中使用此别名了

from Cat cat
子句中可以同时出现多个类, 其查询结果是产生一个笛卡儿积或产生跨表的连接。

from Formula, Parameter
from Formula as form, Parameter as param
查询语句中别名的开头部分小写被认为是实践中的好习惯, 这样做与Java变量的命名标准保持了一致 (比如,domesticCat)。

3.关联(Association)与连接(Join)
inner join(内连接)
left outer join(左外连接)
right outer join(右外连接)
full join (全连接,并不常用)

例:
from Emp as emp
inner join emp.deptno as mate
left outer join Dept as dept

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章