4.6. 关于 HQL 功能


HQL 定义一些可用的标准功能,无论使用的底层数据库是什么。HQL 也可以了解方形图和应用程序中定义的其他功能。

4.6.1. 关于 HQL 标准化功能

无论使用的底层数据库是什么,HQL 中都提供以下功能:

Expand
表 4.3. HQL 标准化功能
功能描述

BIT_LENGTH

返回二进制数据的长度。

CAST

执行 SQL 广播.cast 目标应命名为要使用的 Hibernate 映射类型。

EXTRACT

根据日期时间值执行 SQL 提取.提取将返回日期/时间值的一部分,如当年。请参见以下简写表格。

SECOND

用于提取第二个的缩写提取表单。

MINUTE

用于提取分钟的缩写提取表单。

HOUR

用于提取小时的缩写提取表单。

DAY

用于提取日期的缩写提取表单.

用于提取月份的简短提取表单。

用于提取年度的简短提取表单.

STR

转换值作为字符数据的简写形式。

4.6.2. 关于 HQL 非标准化功能

Hibernate 拨号可以注册已知可用于该特定数据库产品的其他功能。它们只有在使用该数据库或拨号时才可用。以数据库可移植性为目标的应用应避免在此类别中使用函数。

应用程序开发人员还可以提供自己的一组功能。这通常代表自定义 SQL 函数或 SQL 片段的别名。此类功能声明通过使用 org.hibernate.cfg.ConfigurationaddSqlFunction 方法进行。

4.6.3. 关于连接操作

HQL 除了支持串联(CONCAT)功能外,还定义了串联运算符。这没有被 Jakarta Persistence 查询语言定义,因此便携式应用应避免使用它。连接运算符取自 SQL 串联运算符(||)。

示例:连接操作示例

select 'Mr. ' || c.name.first || ' ' || c.name.last
from Customer c
where c.gender = Gender.MALE
Copy to Clipboard Toggle word wrap

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat