`

Hibernate中HQL函数汇总及其说明

    博客分类:
  • J2EE
阅读更多
Criteria查询对查询条件进行了面向对象封装,符合编程人员的思维方式,不过HQL(Hibernate Query Language)查询提供了更加丰富的和灵活的查询特性,因此Hibernate将HQL查询方式立为官方推荐的标准查询方式,HQL查询在涵盖Criteria查询的所有功能的前提下,提供了类似标准SQL语句的查询方式,同时也提供了更加面向对象的封装。以下就是HQL的一些常用函数,有了这些函数,我们就可以拥有更多的灵活性,比如HQL如何取余,HQL如何返回集合的最值,HQL字符串处理,HQL时间、日期处理等。

函数名称 说明 类型 支持 使用方法 备注
ABS(n) 取绝对值 数学函数 JPAQL HQL ABS(column_name[数字类型对象属性])
SQRT(n) 取平方根 数学函数 JPAQL HQL SQRT(column_name[数字类型对象属性])
MOD(x,y) 取余数 数学函数 JPAQL HQL MOD([对象属性(数字)或值],[对象属性(数字)或值]) 数字必须是整型,返回参数1/参数2得的余数
SIZE(c) 方法集合内对象数量 集合函数 JPAQL HQL
MINELEMENT(c) 返回集合中最小元素 集合函数 HQL
MAXELEMENT(c) 返回集合中最大元素 集合函数 HQL
MININDEX(c) 返回索引集合最小索引 集合函数 HQL
MAXINDEX(c) 返回索引集合最大索引 集合函数 HQL
MAX(n) 返回最大值 集合函数 JPQHQL HQL
MIN(n) 返回最小值 集合函数 JPQHQL HQL
COUNT(n) 返回计数 集合函数 JPQHQL HQL
CONCAT(s1,s2) 连接连个字符串 字符串函数 JPQHQL HQL CONCAT([对象属性],[对象属性])
SUBSTRING(s,offset,length) 返回子串 字符串函数 JPQHQL HQL SUBSTRING([要截取的字符串属性字段],开始位置,截取长度)
TRIM([[BOTH/LEADING/TRAILING]] char FROM s) 默认去掉字符串两面的空格 字符串函数 JPQHQL HQL TRIM([字符串对象属性列]) 将字段两端的空格去掉
LOWER(s) 小写 字符串函数 JPQHQL HQL LOWER([字符串对象属性列]) 将该列结果含有的字母全部大写
UPPER(s) 大写 字符串函数 JPQHQL HQL UPPER([字符串对象属性列]) 将该列结果含有的字母全部大写
LENGTH(s) 返回字符串长度 字符串函数 JPQHQL HQL LENGTH(字段名) 返回字段内容的长度,包括数字。null值返回null.
CURRENT_DATE() 返回数据库当前日期 时间函数 JPAQL HQL CURRENT_DATE() 返回数据库当前日期
CURRENT_TIME() 时间 时间函数 JPAQL HQL CURRENT_TIME() 返回数据库当前时间
SECOND(d) 从日期中提取具体秒 时间函数 HQL SECOND(时间字段) 空的时候返回null
MINUTE(d) 从日期中提取具体分 时间函数 HQL MINUTE(时间字段) 空的时候返回null
HOUR(d) 从日期中提取具体小时 时间函数 HQL HOUR(时间字段 空的时候返回null
DAY(d) 从日期中提取具体天 时间函数 HQL DAY(时间字段) 空的时候返回null
MONTH(d) 从日期中提取具体月 时间函数 HQL MONTH(时间字段) 空的时候返回null
YEAR(d) 从日期中提取具体年 时间函数 HQL YEAR(时间字段) 空的时候返回null
分享到:
评论

相关推荐

    Hibernate HQL.txt

    根据提供的文件信息,我们可以深入探讨Hibernate HQL(Hibernate Query Language)的相关知识点,特别是关于其查询功能、连接操作、条件过滤以及聚合函数的应用等。 ### Hibernate HQL简介 Hibernate HQL是一种...

    Hibernate_query聚合函数查询.

    本篇主要探讨的是Hibernate对数据库查询中聚合函数的应用,这些功能使我们能够高效地处理数据统计和汇总任务。在学习过程中,我们经常会遇到诸如求和(SUM)、平均值(AVG)、最大值(MAX)、最小值(MIN)以及计数...

    hibernate 3.2中文手册 中文文档

    ### Hibernate 3.2中文手册知识点汇总 #### 第1章:Hibernate入门 - **1.1 前言** - 介绍了Hibernate的基本概念及其重要性。 - 强调了学习Hibernate对于Java开发人员的重要性。 - **1.2 第一部分—第一个...

    HQL连接查询和注解使用总结

    ### HQL连接查询和注解使用总结 ...以上总结了HQL连接查询的不同类型及其语法特点,以及如何在Hibernate中利用注解配置持久化类及其关联关系。这些知识对于理解和使用Hibernate进行高效数据库操作至关重要。

    hibernate4.1中文api

    ### hibernate4.1中文API知识点汇总 #### 1. 教程 ##### 1.1 第一部分 - 第一个Hibernate应用程序 - **设置**: 安装必要的开发环境,包括Java SDK、IDE(如Eclipse或IntelliJ IDEA)、Hibernate库等。 - **第一节...

    hibernate3.6 文档(pdf 格式)

    - **聚合函数**:说明如何在 HQL 中使用聚合函数进行数据汇总。 - **多态查询**:讨论如何编写可以查询继承结构的 HQL。 - **where 子句**:解释如何在 HQL 中添加筛选条件。 - **表达式**:介绍 HQL 中可用的表达式...

    hibernate中文教程

    5. **查询语言(HQL)与Criteria查询**:介绍Hibernate查询语言,包括基本查询、聚合函数、子查询、关联查询等。同时,探讨Criteria API,提供一种更面向对象的查询方式。 6. **Cascading与Lazy Loading**:解释...

    查询和并发

    本篇将详细探讨"查询和并发"这一主题,结合`hibernate_06_hql`、`hibernate_07_criteria`及`hb_08_concurrencycontrol`这三部分内容,我们将深入理解Hibernate中的HQL查询、Criteria查询以及并发控制策略。...

    Hibernate

    Hibernate 是一个开源的对象关系映射(ORM)框架,它允许Java开发者在Java应用程序中操作数据库,而无需直接编写SQL语句。在Hibernate 3.2版本中,它提供了丰富的功能和改进,使得Java开发人员能够更高效、更方便地...

    Hibernate查询详解

    - `GROUP BY`子句配合统计函数,如`COUNT()`, `SUM()`, `AVG()`, `MAX()`, `MIN()`,用于数据汇总和分析。 ### 连接查询 - **内连接(INNER JOIN)** 只返回两个表中匹配的记录。 - **左外连接(LEFT OUTER JOIN...

    J2EE面试问题汇总

    - Hibernate:对象关系映射(ORM),实体管理,HQL 查询语言。 - Struts:MVC 设计模式,Action 类,配置文件详解。 **四、HTML/CSS/JavaScript** 面试可能涵盖前端开发的基础知识: - HTML 结构、语义化标签、表单...

    java笔试题面试题汇总.zip

    - **Hibernate**:掌握ORM(对象关系映射)概念,会使用HQL进行数据库操作。 - **Struts**:理解MVC模式,会配置Action和Result,处理表单提交。 以上是Java笔试题和面试题中常见的知识点,熟悉并掌握这些内容将...

    java知识点汇总学习路线与笔记

    - **递归**:递归是一种算法或程序设计技巧,在函数或过程中调用自身来解决问题的方法。递归的关键在于设置好递归的基本情况(base case)和递归规则。 - **集合、范型、自动打包解包、Annotation**:集合框架提供了...

    面试题java.zip

    Hibernate作为持久化框架,可能问及ORM映射、事务管理、HQL查询等。 最后,"java面试笔试题大汇总.pdf"可能是一个综合性的题库,涵盖了上述所有主题,并可能添加了JVM内存模型、垃圾收集机制、性能优化、数据库连接...

    Java_笔记整理

    以上内容为Java学习过程中重要的知识点汇总,不仅包含了Java语言本身的核心概念和技术,还覆盖了数据库操作、Web开发、框架使用等方面的内容,对于初学者来说具有很高的参考价值。同时,也提供了一些基本的Linux/...

    J2EE软件工程师全部培训课程总结

    - **集合函数**:如`COUNT()`、`SUM()`、`AVG()`等,用于汇总数据。 - **子查询**:一个查询作为另一个查询的一部分执行,通常用于更复杂的逻辑处理。 - **绑定变量**:在执行SQL语句时,可以使用绑定变量来代替具体...

Global site tag (gtag.js) - Google Analytics