转自:http://aumy2008.blogbus.com/logs/13887948.html
二.设定查询条件
在where子句中给出的是对象的属性名,而不是字段名。
HQL和QBC支持的各种运算
运算类型
|
HQL运算符
|
QBC运算符
|
含义
|
比较运算
|
=
|
Expression.eq()
|
等于
|
<> |
Expression.not(Expression.eq())
|
不等于
|
> |
Expression.gt()
|
大于
|
>=
|
Expression.ge()
|
大于等于
|
< |
Expression.lt()
|
小于
|
<=
|
Expression.le()
|
小于等于
|
is null
|
Expression.isNull()
|
等于空值
|
is not null
|
Expression.isNotNull()
|
非空值
|
范围运算
|
in (列表)
|
Expression.in()
|
等于列表中的某一个值
|
not in (列表)
|
Expression.not(Expression.in())
|
不等于列表中的任意一个值
|
between 值1 and 值2
|
Expression.between()
|
大于等于值1并且小于等于值2
|
not between 值1 and 值2
|
Expression.not(Expression.between())
|
小于值1或者大于值2
|
字符串模式匹配
|
like
|
Expression.like() |
字符串模式匹配
|
逻辑运算
|
and
|
Expression.add()或者Expression.conjunction() |
逻辑与
|
or
|
Expression.or()或者Expression.disjunction() |
逻辑或
|
not
|
Expression.not() |
逻辑非
|
1、比较运算
(1)不区分大小写:HQL使用lower()或者 upper()来实现(如:”…lower(c.name)=’tom’”);
QBC使用.ignoreCase()来实现(如:Expression.eq(“”,””) .ignoreCase())。
注:在HQL中,可以调用SQL函数。lower()转小写,upper()转大写。
QBC不支持直接调用SQL函数。
(2)HQL查询支持数学运算表达式,而QBC不支持。
2、范围运算
HQL中的in示例: c.name in (‘aa’,’bb’);
QBC中的in示例: String[] names={‘aa’,’bb’}; Expression.in(‘name’,names); 。
3、字符串模式匹配
HQL和QBC通用:字符串模式中的通配符
通配符名称
|
通配符
|
作用
|
百分号
|
%
|
匹配任意类型且任意长度(长度可以为0)的字符串,如果是中文,需要两个百分号,即“%%”
|
下划线
|
_
|
匹配单个任意字符,常用来限制字符串表达式的长度
|
QBC:MatchMode类包含的各个静态常量实例
匹配模式
|
举例
|
MatchMode.START
|
Expression.like(“name”,”y”, MatchMode.START)
姓名以y开头
|
MatchMode.END
|
Expression.like(“name”,”y”, MatchMode. END)
姓名以y结尾
|
MatchMode.ANYWHERE
|
Expression.like(“name”,”y”, MatchMode. ANYWHERE)
姓名中包含y
|
MatchMode.EXACT
|
Expression.like(“name”,”y”, MatchMode. EXACT)
精确匹配,姓名必须为y
|
4、逻辑运算
分享到:
相关推荐
Hibernate的检索方式: 5种
介绍了HIBERNATE的检索策略,可以此作为指引进行学习
Hibernate检索方式 孙卫琴的 pdf
java-Hibernate 检索
NULL 博文链接:https://364232252.iteye.com/blog/2368725
hibernate5--4.检索方式及策略
NULL 博文链接:https://364232252.iteye.com/blog/2368583
Hibernate数据检索(HQL)笔记Hibernate数据检索(HQL)笔记Hibernate数据检索(HQL)笔记Hibernate数据检索(HQL)笔记
魔乐科技,李兴华老师的Hibernate教程笔记,对Hibernate的基础知识进行了比较详细的讲解,对初学者有一个比较笼统的介绍,是带我们入门Hibernate的不二选择。
基于Spring的Hibernate Search全文检索功能示例 实例下载
Hibernate的检索策略包括类级别检索策略和关联级别检索策略。
hibernate的注解开发 注解开发关联映射 HQL、QBC、本地SQL检索数据
本人在厦门邦初培训时候 使用的快速入门精简文档 Session缓存的作用 Session清理缓存的时间点 对象的临时状态、持久状态和游离状态 用session的update()方法使游离对象转变为持久化对象。...本地SQL检索方式
再由Hibernate概述、Hibernate基础Hibernate高级特性顺序展开,直至Hibernate实战,重点讲述了Hibernate的基础语法、基础配置、O/R映射、数据关联、数据检索、HQL实用技术、自定义持久化实现、Hibernate回调与拦截、...
Hibernate数据检索(HQL).rar
使用hibernate search实现全文检索和文档管理功能: 1 全文检索 2 手动生成索引 3 文档上传(自动建立索引) 4 文档更新(自动建立索引) 5 文档删除 使用说明: 1 需要先恢复数据库 searchDB_2008sqlserver.bak 2 ...
总结hibernate框架的常用检索方式 1、hibernate框架的检索方式有以下几种: OID检索:根据唯一标识OID检索数据 对象导航检索:根据某个对象导航查询与该对象关联的对象数据 HQL检索:通过query接口对象查询 QBC...
本PPT描述了对SHH框架中hibernate数据检索功能的描述,用户可以更快的学习Hibernate数据检索
hibernate的延迟检索在轻量级J2EE框架中的应用