`
lian
  • 浏览: 57412 次
  • 性别: Icon_minigender_1
  • 来自: 洛阳
社区版块
存档分类
最新评论

HQL多对多集合查询

 
阅读更多
以前做过的一对多,多对一关系比较多,今天遇到了Hibernate的多对多查询,查了下资料,发现还是有些门道的。
大概写法是 比如 人(People)和文档(Document)
People里面包含一个 documentList

Document里面包含对应 一个 peopleList

查询某一个人的文档列表:

select p.documentList from People where p.id=?


查询某一个人的文档列表 并且加上文档名字的条件

select d from Document inner join d.peopleList p where p.id=? and d.name=?
分享到:
评论
5 楼 576017120 2012-06-20  
lian 写道
576017120 写道
String hql="update Member m  set m.createdBy='dd',set m.sex='1' ";
我执行上面的语句就会报错,sql语句是可以同时更新多个字段的,但hql没同时更新过几个字段。。。



那为啥不这样写呢? member.setCreatedBy("dd"); member.setSex(1);  updateEntity(member);

我去试试,之前一直没这样用过。。。  3q
4 楼 lian 2012-06-19  
576017120 写道
String hql="update Member m  set m.createdBy='dd',set m.sex='1' ";
我执行上面的语句就会报错,sql语句是可以同时更新多个字段的,但hql没同时更新过几个字段。。。



那为啥不这样写呢? member.setCreatedBy("dd"); member.setSex(1);  updateEntity(member);
3 楼 576017120 2012-06-13  
String hql="update Member m  set m.createdBy='dd',set m.sex='1' ";
我执行上面的语句就会报错,sql语句是可以同时更新多个字段的,但hql没同时更新过几个字段。。。
2 楼 lian 2012-06-13  
hibernate 在更新的时候 你只要设置好你要更新的字段 update就可以了啊! 设置多个字段不就是同时更新多个字段吗?
1 楼 576017120 2012-06-12  
请问,hql在更新的时候,能否同时更新多个字段?

相关推荐

    HQL多对多的查询语句分析

    标题"**HQL多对多的查询语句分析**"主要关注的是如何在Hibernate中使用HQL处理数据库中的多对多关联关系查询。在数据库设计中,多对多关系是最复杂的关联类型,它意味着一个实体可以与多个其他实体相关联,反之亦然...

    Hibernate-HQL语句多对多写法

    Hibernate 的 HQL 语言提供了强大的查询功能,使得我们可以方便地检索和操作数据,特别是在多对多关系的情况下。 知识点: 1. Hibernate 的 HQL 语言可以用来编写查询语句,以便检索和操作数据。 2. 在多对多关系...

    HQL查询及语法

    ### HQL查询及语法详解 #### 一、HQL简介 HQL,全称为Hibernate Query Language,是Hibernate框架提供的一种面向对象的查询语言。它基于SQL标准,但更加强调对象模型,支持Java中的对象关系映射(ORM),能够处理...

    Hql多结果集

    在开发过程中,经常会遇到需要从数据库中获取多个实体或者实体集合的情况,这时就需要用到HQL的多结果集查询功能。 #### 二、HQL多结果集概述 HQL多结果集是指在一个查询语句中返回多个结果集,这些结果集可以是...

    hql多表查询

    `student`表存储学生信息,`course`表存储课程信息,而`sc`表作为多对多关系的中间表,记录每个学生选择的课程及其成绩。`sc`表的两个外键字段`Sno`和`Cno`分别对应`student`表的`id`和`course`表的`id`,建立了学生...

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

    - `@ManyToOne`: 建立多对一关联关系。 - `@ManyToMany`: 建立多对多关联关系。 以上总结了HQL连接查询的不同类型及其语法特点,以及如何在Hibernate中利用注解配置持久化类及其关联关系。这些知识对于理解和使用...

    HQL查询语言基础.

    **HQL查询语言基础** HQL(Hibernate Query Language)是Hibernate框架中用于操作对象关系映射(ORM)的查询语言,它与SQL类似,但专为面向对象编程设计。HQL允许开发者以类和对象的方式编写查询,而不是直接处理...

    血缘关系解析工具源码_对hql集合进行静态分析_获取hql对应的血缘图.zip

    在本项目中,源码着重于对HQL集合进行静态分析,这意味着它不会实际执行HQL查询,而是通过分析查询语句的结构来推断血缘关系。这种分析方法有助于提前发现可能的错误,例如未定义的表或字段,或者不正确的JOIN条件。...

    Hibernate教程(数据查询)HQL,PDF格式

    HQL查询通常是在Session对象上调用`createQuery()`或`createSQLQuery()`方法来执行的,返回的结果可以是对象列表、特定属性的集合或是单个对象。 #### HQL查询示例 在给定的部分内容中,我们看到了一个简单的...

    全面解析HQL语句 非常详细直接的HQL语句的功能介绍

    HQL还提供了对集合的高级操作,如`someelements`和`size`函数。例如: - `select mother from Cat as mother, Cat as kit where kit in elements(mother.kittens)`:找到所有幼猫的母亲。 通过上述分析,我们可以...

    hql语句查询

    4. **GROUP BY**:对查询结果分组。 5. **HAVING**:对分组后的结果进一步筛选。 6. **ORDER BY**:对结果排序。 #### 三、HQL语法详解 ##### 1. 基础查询 - **查询所有列**: ```hql SELECT obj FROM TableName...

    03-HQL实用技术.pdf

    - **定义**: 单向多对一是指多个子对象共享同一个父对象,但是父对象并不知道它有哪些子对象。 - **配置方法**: - 在子对象的类中添加一个父对象类型的属性,并在该属性上使用`@ManyToOne`注解。 - 在父对象的类中...

    hql查询语句

    多态查询也是HQL的一个特性,如`from Person as p`和`from java.lang.Object o`表示可以对任何类型进行查询。同时,`from Named as n`针对具有公共接口或基类的查询也十分方便。 在`where`子句中,可以使用多种...

    NHibernate HQL 条件查询

    在探讨NHibernate HQL条件查询时,我们首先要理解NHibernate框架以及HQL(Hibernate Query Language)的基本概念。NHibernate是一个开放源代码的对象关系映射(ORM)解决方案,它为.NET平台提供了一种将对象模型与...

    Hibernate HQL查询.docx

    Hibernate 提供了一种非常强大的查询语言——HQL(Hibernate Query Language),它在语法上与 SQL 类似但功能更为强大,因为它支持面向对象的特性,例如继承、多态性和关联等。 #### 二、HQL 的特点 1. **面向对象*...

    HQL 查询语言基础 二

    `ORDER BY`子句用于对查询结果进行排序。例如: ```hql FROM Person as p ORDER BY p.name, p.age ``` 这条查询将返回的`Person`实体按姓名升序排列,如果姓名相同,则按年龄降序排列。 #### 七、GROUP BY 子句 ...

    Hibernate-HQL-查询-Query资料

    - **关联查询**:处理一对多、一对一、多对多等关联关系的查询。 4. **条件查询** - 使用WHERE子句指定查询条件,支持比较操作符(=、<、>、、>=、!=)、逻辑操作符(AND、OR、NOT)以及IN、BETWEEN、LIKE等。 5...

    HQL查询语言基础!

    在本文中,我们将深入探讨HQL的基本用法,包括单表查询、多表查询以及不同类型的连接(join)。 1. **单表查询** - 在HQL中,`from`关键字用于指定查询的实体。例如,`from eg.cat as cat`表示查询名为`Cat`的实体...

    HQL查询语言基础

    HQL对实体名称和属性名称通常是大小写敏感的,因此在编写查询时应遵循源代码中的命名规则。 ### 4. `select`语句 `select`语句用于定义查询返回的结果,可以是对象、对象的属性,甚至是多个对象和属性的组合。例如...

Global site tag (gtag.js) - Google Analytics