`

hql语句的from不支持子查询

 
阅读更多

上午,跨表查询,写了很长的hql语句,就是出错!后来上网查查,方知hql语句的from不支持子查询,where支持!
   如: select a from A a,(select b from B b,C c where b.id=c.id) d 
       where a.id=d.id; 
  改为→select a from A a where a.id in (select b.id from B b,C c 
       where b.id=c.id);

分享到:
评论

相关推荐

    hql语句语法详解hql语句

    ### HQL语句语法详解 HQL(Hibernate Query Language)是一种面向对象的查询语言,它提供了灵活而强大的机制来查询数据库中的数据,并将其映射到Java对象上。本篇文章将根据给定的信息深入探讨HQL的基本语法结构...

    hibernate 中HQL语句查询学习笔记

    ### Hibernate中HQL语句查询学习笔记 #### HQL基础 **HQL**(Hibernate Query Language)是Hibernate框架推荐使用的查询语言,它提供了一种面向对象的方式来查询数据库,支持多种复杂的查询操作,如继承、多态及...

    hql基础语句

    - ** 子查询 **:可以在HQL查询中嵌套其他查询。 - ** 排序与分组 **:`order by`和`group by`语句用于排序结果和按属性分组。 - ** 扩展查询 **:如`left outer join`、`right outer join`等,实现不同类型的连接。...

    常用的HQL语句下载

    它支持复杂的查询结构,包括连接、子查询、条件语句等。通过使用HQL,开发人员可以在保持代码可读性和可维护性的同时,充分利用Hibernate的ORM优势。然而,理解HQL的语法和用法对于有效利用这些功能至关重要。在实际...

    HQL查询及语法

    2. **编写HQL语句**:根据需求构建HQL查询语句,这一步骤需要熟悉HQL语法结构。 3. **创建Query对象**:利用Session对象的`createQuery`方法,传入HQL语句创建Query实例。 4. **设置参数**:如果HQL语句中包含...

    HQL语句的用法

    HQL也支持子查询,可以在`where`或`from`子句中嵌套查询。例如,`select o from Order o where o.id in (select pid from Product p where p.category='Electronics')`将返回所有属于'Electronics'类别产品的订单。 ...

    hibernate的hql语句

    7. **子查询**:HQL允许在查询语句中嵌套查询,以实现复杂的数据过滤。例如,`select c from Cat c where c.mate in (select m from Mate m where m.age > 3)`,这个查询会找出所有配偶年龄大于3岁的猫。 8. **投影...

    超级详细的hql查询语句教程

    比较子查询用于比较子查询返回的值: ```hql SELECT s FROM Student s WHERE s.sage > (SELECT MIN(sage) FROM Student) ``` 此查询将返回年龄大于最小年龄的学生。 ##### 4.4 带有ANY或ALL的子查询 使用ANY或...

    hql语句的学习,很有用的东西

    另外,HQL也支持子查询,可以嵌套在`from`、`where`、`select`等子句中,以实现更复杂的逻辑。例如,找出所有拥有最多项目的项目经理: ```java query = session.createQuery( "from Manager m where m.id in ...

    hql查询语句

    HQL还支持连接查询和子查询,可以处理复杂的数据关系。通过理解并熟练运用这些HQL语句,开发者可以更加高效地操作数据库,提升应用程序的性能和可维护性。在实际项目中,合理运用HQL能大大简化数据查询和处理的工作...

    强烈建议的HQL语法规则详解

    HQL提供了丰富的查询功能,包括选择、投影、连接、分组、排序等,同时也支持子查询和嵌套查询。此外,HQL还可以直接调用对象的方法,使得查询更加灵活。在实际开发中,熟练掌握HQL能够显著提高代码的可读性和可维护...

    hibernate_hql.rar_HQL

    例如,要查询所有User对象,HQL语句可以写成: ```java String hql = "from User"; Query query = session.createQuery(hql); List<User> users = query.list(); ``` 这里的`from User`表示从User实体类对应的表中...

    HQL查询语言基础知识

    HQL 中的单表查询使用 FROM 语句,例如:FROM eg.Cat as cat,其中 cat 只是一个别名,为了用其他子语句的时候书写简单。 2.多表查询 HQL 中的多表查询使用 FROM 语句,例如:FROM eg.Cat as cat, eg.Dog as dog。...

    hibernate hql语句 投影查询的三种方式.docx

    在Hibernate框架中,HQL(Hibernate Query Language)是用于操作对象关系映射的查询语言,类似于SQL,但它是面向对象的。本篇文章将详细介绍在Hibernate中进行投影查询的三种主要方式:直接查询、查询返回对象以及...

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

    - 在HQL查询语句的`WHERE`子句中使用子查询。 - 关键字`ALL`, `ANY`/`SOME`, `IN`, `EXISTS`等可以用于子查询。 - **HQL提供的集合操作函数**: - `size()`/`size`: 获取集合中元素的数目。 - `minIndex()`/`...

    HQL详解

    HQL也支持子查询,可以嵌套在`SELECT`, `FROM`, `WHERE`等子句中。 ```sql SELECT p FROM Person p WHERE p.age IN (SELECT AVG(a.age) FROM AgeGroup a) ``` 这个查询会找出年龄在平均年龄之上的所有人。 ### ...

    hibernate子查询

    然而,正如你所描述的,Hibernate的HQL(Hibernate Query Language)并不直接支持在`FROM`子句后跟一个子查询,这与标准的SQL语法有所差异。在HQL中,子查询通常用在`WHERE`子句或者`SELECT`子句中,而不是作为数据...

Global site tag (gtag.js) - Google Analytics