HQl入门

概述

HQL和SQl非常相似,不同点在于,SQl操作的是数据库的表和字段,而HQl操作的是实体类和属性。
在hibernate中,使用SqlQuery查找出的数据不能被自动封装成对象,而是以Object数组的形式返回。
所以,常在使用hibernate查询时使用到hql语句。

常用HQl

功能语句示例
查询所有from+实体类名from Customer
条件查询from+类名(可加别名)+where+条件(用属性名)from Customer c where c.id = ?(问号位置从0开始)
排序查询from+类名+order by+属性+DESC/ASCfrom Customer order by id DESC
投影查询select+属性+from+实体类名select c.id,c.name from Customer c

聚集函数的使用:

  • count:统计总数
  • sum:求和
  • avg:求平均
  • max,min
    以count为例:
    select count(*) from +类名

多表查询

  1. 内连接:from +类名 别名+inner join 别名.set集合(以数组形式返回)
  2. 迫切内连接:与内连接底层实现相同,但是以对象形式返回
    from +类名 别名 +inner join fetch +别名.set集合
  3. 左外连接:from 类名 别名+left outer join +别名.set
  4. 迫切左外连接:from 类名 别名+left outer join fetch +别名.set
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值