HQL(Hibernate Query Language)提供更加丰富灵活、更为强大的查询能力; HQL更接近SQL语句查询语法; [select/delete/update…][from…][where…][group by…][having…][order by…]
(1)单一属性:
(2)多个属性:
(1)List方式:
(2)迭代方式:
两者区别:
list:默认情况下list每次都会发出sql语句,list会将数据放到缓存中,而不利用缓存 iterate:默认情况下iterate利用缓存,如果缓存中不存在会出现N+1问题
(1)like:返回list
(2)占位符方法:返回query
(3)方法链:
(4)使用参数名方式:
(5)获取日期的年和月:用date_format
(6)两个日期间数据的查询:
setFirstResult(),从0开始; setMaxResults(),每页显示的记录数
连接查询分为内连接和外连接(左连接和右连接) 1.内连接: 2.左连接: 3.右连接:
查询班级名称和学生人数:string hql =
Hql是hibernate的核心查询,和sql差不多,目前学会了sql,linq,hql三种查询语言,现在学起来很轻松,多和以前学过的知识联系吧。