Hibernate中HQL函数汇总及其说明

来源:互联网 发布:手机出钱魔术软件 编辑:程序博客网 时间:2024/05/18 01:35

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



函数名称说明类型支持使用方法备注ABS(n)取绝对值数学函数JPAQL HQLABS(column_name[数字类型对象属性]) SQRT(n)取平方根数学函数JPAQL HQLSQRT(column_name[数字类型对象属性]) MOD(x,y)取余数数学函数JPAQL HQLMOD([对象属性(数字)或值],[对象属性(数字)或值])数字必须是整型,返回参数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 HQLCONCAT([对象属性],[对象属性]) SUBSTRING(s,offset,length)返回子串字符串函数JPQHQL HQLSUBSTRING([要截取的字符串属性字段],开始位置,截取长度) TRIM([[BOTH/LEADING/TRAILING]] char FROM s)默认去掉字符串两面的空格字符串函数JPQHQL HQLTRIM([字符串对象属性列])将字段两端的空格去掉LOWER(s)小写字符串函数JPQHQL HQLLOWER([字符串对象属性列])将该列结果含有的字母全部大写UPPER(s)大写字符串函数JPQHQL HQLUPPER([字符串对象属性列])将该列结果含有的字母全部大写 LENGTH(s)返回字符串长度字符串函数JPQHQL HQLLENGTH(字段名)返回字段内容的长度,包括数字。null值返回null.CURRENT_DATE()返回数据库当前日期时间函数JPAQL HQLCURRENT_DATE()返回数据库当前日期CURRENT_TIME()时间时间函数JPAQL HQLCURRENT_TIME()返回数据库当前时间SECOND(d)从日期中提取具体秒时间函数HQLSECOND(时间字段)空的时候返回nullMINUTE(d)从日期中提取具体分时间函数HQLMINUTE(时间字段)空的时候返回nullHOUR(d)从日期中提取具体小时时间函数HQLHOUR(时间字段空的时候返回nullDAY(d)从日期中提取具体天时间函数HQLDAY(时间字段)空的时候返回nullMONTH(d)从日期中提取具体月时间函数HQLMONTH(时间字段)空的时候返回nullYEAR(d)从日期中提取具体年时间函数HQLYEAR(时间字段)空的时候返回null
0 0