1、日期比较示例
String hql="from stu t where t.date >= '2012-05-01 00:00:00' and t.date <= '2012-05-10 23:59:59'";
2、boolean型的比较
String hql="from LinkMan t where t.valid=true";
String hql2="from LinkMan t where t.valid=false";
3、hql的order by中,不能t.organ.code方式来排,只能用t.organ来排序.否则,将导致organ属性为null的记录查不出来
4、一段示例代码
public List<LinkMan> query()
{
UserInfoLogin userInfo = (UserInfoLogin) ServletActionContext.getRequest().getSession().getAttribute("userInfo_login");
String userId = userInfo.getUserId();
String clientname = ServletActionContext.getRequest().getParameter(Constants.SEARCH_ + "clientname");
String name = ServletActionContext.getRequest().getParameter(Constants.SEARCH_ + "name");
String post = ServletActionContext.getRequest().getParameter(Constants.SEARCH_ + "post");
String phone = ServletActionContext.getRequest().getParameter(Constants.SEARCH_ + "phone");
String tel = ServletActionContext.getRequest().getParameter(Constants.SEARCH_ + "tel");
String valid = ServletActionContext.getRequest().getParameter(Constants.SEARCH_ + "valid");
String homeAddress = ServletActionContext.getRequest().getParameter(Constants.SEARCH_ + "homeAddress");
String addTime_begin = ServletActionContext.getRequest().getParameter(Constants.SEARCH_ + "addTime_begin");
String addTime_end = ServletActionContext.getRequest().getParameter(Constants.SEARCH_ + "addTime_end");
StringBuffer hql = new StringBuffer("from LinkMan t where t.client.salesMan.id='" + userId + "'");
if (clientname != null && !"".equals(clientname.trim()))
{
hql.append(" and t.client.name like '%" + clientname + "%'");
}
if (name != null && !"".equals(name.trim()))
{
hql.append(" and t.name like '%" + name + "%'");
}
if (post != null && !"".equals(post.trim()))
{
hql.append(" and t.post like '%" + post + "%'");
}
if (phone != null && !"".equals(phone.trim()))
{
hql.append(" and t.phone like '%" + phone + "%'");
}
if (tel != null && !"".equals(tel.trim()))
{
hql.append(" and t.tel like '%" + tel + "%'");
}
if (homeAddress != null && !"".equals(homeAddress.trim()))
{
hql.append(" and t.homeAddress like '%" + homeAddress + "%'");
}
if (valid != null && !"".equals(valid.trim()))
{
hql.append(" and t.valid=" + valid + "");
}
if (addTime_begin != null && !"".equals(addTime_begin.trim()))
{
hql.append(" and t.addTime >= '" + addTime_begin + "'");
}
if (addTime_end != null && !"".equals(addTime_end.trim()))
{
hql.append(" and t.addTime <= '" + addTime_end + " 23:59:59'");
}
hql.append(" order by t.addTime desc");
return dao.queryByHql_page(hql.toString());
}
分享到:
相关推荐
标题:“全面解析HQL语句 非常详细直接的HQL语句的功能介绍” 描述:“非常详细直接实用的HQL语句的功能介绍看过的人保准都说好” 本篇文章将深入探讨HQL(Hibernate Query Language)的核心功能及其在数据查询...
以下是一些常用HQL语句的使用与说明: 1. **HQL更新语句**: 更新操作允许您修改数据库中的对象属性。在示例中,第4行的HQL语句`update PhUser set realName=?`用于更新`PhUser`表中所有记录的`realName`字段。第5...
本文将深入解析HQL语句的常见用法。 1. 大小写敏感性 HQL对Java类和属性的名称是大小写敏感的,但在关键字和表名方面,除了类名和属性名之外,HQL不区分大小写。因此,`SeLeCT`、`sELEct`和`SELECT`被视为相同,但`...
汇集了hql语句中大部分常用的函数 ABS(n) 取绝对值数学函数 数学函数 JPAQL HQL ABS(column_name[数字类型对象属性])
以下是一些常见的HQL语句及其用法: 1. **HQL更新**: 更新操作通常涉及到设置对象的属性并保存更改。例如,以下HQL语句用于将`PhUser`类中的某个用户的`realName`属性改为"小李想": ```java String hql = ...
### HQL语句使用大全 HQL(Hibernate Query Language)是一种面向对象的查询语言,它提供了灵活而强大的数据检索方式,使开发人员能够更高效地与数据库交互。本文将详细介绍HQL的基本用法及高级特性。 #### 1. ...
### Spring框架中HQL语句的使用方法 在学习Spring框架与Hibernate集成的过程中,掌握HQL(Hibernate Query Language)的使用方法是十分重要的。本文档将详细介绍如何在Spring环境中运用HQL进行数据查询操作,包括...
标题:“Hibernate 经常用的一些HQL语句” 描述:“可以让我们更方便的学习Hibernate” ### HQL(Hibernate Query Language)在Hibernate中的应用 HQL是Hibernate框架提供的查询语言,它允许开发者以面向对象的...
#### 完整的HQL语句格式 一个完整的HQL查询语句格式如下: ``` Select/update/delete … from … where … group by … having … order by … asc/desc ``` - **Select**: 查询指定字段或对象。 - **Update/...
它会根据提供的HQL语句返回所有符合条件的数据记录。 **示例代码**: ```java List<User> userList = this.getHibernateTemplate().find("from bean.User"); ``` 此方法将返回所有的`User`对象列表。 #### 二、...
2. **编写HQL语句**:根据查询需求编写相应的HQL语句。 3. **创建Query对象**:通过Session对象的createQuery方法创建Query对象。 4. **执行查询**:调用Query对象的list或iterate方法获取结果。 5. **返回List集合*...
基础查询是最简单的HQL语句,用于获取所有`Student`对象。例如: ```java from Student ``` 或 ```java select s from Student as s ``` 这里的`as`关键字可以省略,表示从`Student`表中选择所有记录。查询结果将...
### 示例2:直接在HQL语句中拼接模糊查询条件 ```java String hql = "from Subject as s where s.subname like '%" + name + "%' and s.subinfo like '%" + info + "%'"; Query query = session.createQuery(hql); ...
可以在Hibernate配置文件中定义命名查询,将HQL语句与名字关联,提高代码复用性和可读性。 7. **联合查询**: 使用`JOIN`关键字可以实现对象之间的关联查询,包括内连接(INNER JOIN)、外连接(LEFT JOIN、RIGHT...
### HQL语言中的一些常用的方法 HQL(Hibernate Query Language)是Hibernate框架提供的一种查询语言,它基于SQL标准,但更加强调面向对象的特点。在实际应用开发中,HQL被广泛用于数据检索、更新等操作。下面将...
HQL查询语句结构通常包括以下几个部分:`SELECT`, `FROM`, `WHERE`, `GROUP BY`, `HAVING`, `ORDER BY`。这些关键字与SQL中的用法类似,但HQL中的对象和属性是基于Java类和它们的成员。 例如,假设我们有一个`...
- Hql语句的结构与SQL类似,如`FROM`、`WHERE`、`ORDER BY`等关键字,但Hql主要针对对象和对象属性,而不是数据库表和列。 - Hql的关键字不区分大小写,但类名和属性名需区分大小写。 - `SELECT`子句在Hql中可选...
HQL(Hibernate Query Language)是一种面向对象的查询语言,它允许开发者用类和属性名称来查询数据库,而不需要直接编写SQL语句。这大大简化了数据库操作的过程,并使得代码更加清晰易读。在本文中,我们将详细介绍...
描述中提到,“hibernate中HQL语句的初级测试可用”,这暗示了这个压缩包可能包含一些简单的HQL查询,用于验证和演示如何在实际项目中使用。由于数据库设计被描述为“很简单”,我们可能不会遇到复杂的表关联或高级...
HQL模糊查询是开发者在进行数据检索时常用的一种功能,它允许我们根据部分关键词或者通配符来查找匹配的数据。下面我们将深入探讨Hibernate的HQL模糊查询及其应用。 一、HQL概述 HQL是一种面向对象的查询语言,它的...