`
codsoul
  • 浏览: 212063 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

hql lef join

 
阅读更多
.
在使用交叉表的时候,对动态字段进行排序,用 sql 是 left join 值表 以排序的值类型为过滤条件,然后对值列排序,  hql 也是left join ,不用on,hibernate会自动加上,你如果需要添加其他的条件,可以用with,另外 hql 可以对 one-to-many 的属性(如Set) 直接当做条件来过滤 例如
学生表 对应 Student 类
Student{
   Integer id;
   Set scores; // 所有该学生下的成绩集合
}
成绩表 对应 Score 类
Score{
    Integer id;
    Integer value; // 成绩的值
    Student student; // 该成绩属于哪个学生
}
当需要查询学生,又需要对学生的某科成绩进行排序的话可以这样
select stu from Student as stu
     left join stu.scores as sc
     with sc.id=1
     where ....
     order by sc.value
分享到:
评论

相关推荐

    HQL语句 HQL语句

    HQL语句 HQL语句 HQL语句 HQL语句 HQL语句

    Hibernate之HQL查询

    HQL支持内连接(INNER JOIN)、左连接(LEFT JOIN)等,可以方便地处理关联关系。例如: ```sql SELECT s, c FROM Student s LEFT JOIN s.courses c ``` 这个查询将返回每个学生及其所有关联的课程。 **6. HQL的聚合...

    HQL查询语言基础知识

    HQL 中的 JOIN 语句用于关联多个表,包括 INNER JOIN、LEFT JOIN、RIGHT JOIN 和 FULL JOIN。 * INNER JOIN:select employee.ID as id1,employee.Name as name1,department.ID as id2,department.Name as name2 ...

    hibernateHQL关联查询

    4. **全外连接(Full Outer Join)**:虽然HQL本身不支持全外连接,但可以通过组合左外连接和右外连接来模拟实现。 #### 五、应用场景 在实际开发中,HQL关联查询的应用场景非常广泛,特别是在需要跨多个实体进行...

    HQL查询语言基础.

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

    hql ppt Hql PPt

    Hql PPt Hql PPt

    HQL Eclipse Plugins 配置教程

    不喜欢使用myEclipse的...最近在项目中使用Hibernate,由于需要使用HQL,找了很多资料,大都是MyEclipse中自带的HQL工具。 由于MyEclipse是收费的,速度不是很理想。所以在网上找到了一个elipse插件 英文图文教程 ...

    hql语句经典教程

    除了标准的`join`类型,HQL还支持`full join`,尽管在实际应用中不常见。`fetch join`对于集合关联特别有用,因为它允许在单个查询中初始化关联对象,从而减少数据库交互次数。 ### 7. 总结 HQL是Hibernate中用于...

    HQL详解

    HQL还支持对关联实体和集合中的元素指定别名,这时需要使用`JOIN`关键字: ``` FROM Cat AS cat INNER JOIN cat.mate AS mate LEFT OUTER JOIN cat.kittens AS kitten ``` 这里使用了不同的连接类型,它们分别是:...

    hql语句大全hql语句大全

    HQL作为一种高度集成的查询语言,不仅简化了数据访问的复杂度,而且通过其丰富的功能,如JOIN和FETCH子句,以及对特定属性的选择,为开发人员提供了灵活的数据检索手段。掌握HQL,意味着能够在Hibernate框架中实现...

    HQL的几钟常见写法

    ### HQL的几种常见写法 #### 概述 HQL(Hibernate Query Language)是Hibernate框架提供的一种查询语言,它支持面向对象的语法结构,并且能够很好地与Java对象模型进行映射。通过HQL,开发者可以更加灵活地操作...

    HQL语言大全 高清晰可复制版

    HQL,全称为Hibernate Query Language,是Hibernate框架中的查询语言,它允许开发者以类似SQL的方式查询对象。在Java开发中,尤其是在处理大量数据持久化时,Hibernate作为一个强大的对象关系映射(ORM)工具,极大...

    精通HQL(word格式)

    SELECT s FROM Student s JOIN s.scList sc WHERE sc.cno = '101' ``` 这里的`scList`是假设的属性,表示学生对象中的选课列表,`cno`是课程号。 【HQL的优势】 相比于直接使用SQL,HQL有以下优势: 1. **类型安全*...

    HQL语法入门学习HQL语法入门学习

    在深入探讨HQL语法之前,我们首先需要理解什么是HQL。HQL,全称为Hibernate Query Language,是Hibernate框架提供的一种面向对象的查询语言。与SQL(Structured Query Language)不同,HQL是专为ORM(Object-...

    HQL语言教程[归类].pdf

    HQL支持多种类型的连接,包括内连接(`inner join`)、左外连接(`left outer join`)、右外连接(`right outer join`)和全连接(`full join`)。简写形式如`join`和`left join`也得到广泛应用。例如,`from Cat as cat ...

    精通hibernate HQL语言

    String hql = "from Student s join s.courses c where c.cname = '数据库原理'"; List<Student> students = session.createQuery(hql).list(); ``` 在这个例子中,`s.courses`表示通过关联属性`courses`获取`...

    hql语句 使用大全

    ### HQL语句使用大全 HQL(Hibernate Query Language)是一种面向对象的查询语言,它提供了灵活而强大的数据检索方式,使开发人员能够更高效地与数据库交互。本文将详细介绍HQL的基本用法及高级特性。 #### 1. ...

    精通HQL.doc

    例如,如果你想找到所有选修了某课程的学生,可以写成 `from Student s join s.courses c where c.cname='数学'`。 6. **聚合函数**:可以使用COUNT、AVG、MAX、MIN和SUM等聚合函数,如 `select count(s.id) from ...

    Hibernate-HQL.rar_HQL_hibernate hql

    1. 关联查询:HQL允许直接在查询中包含关联对象,如“SELECT u FROM User u JOIN u.address a WHERE a.city='北京'”。 2. 子查询:可以在WHERE或HAVING子句中嵌套HQL查询,如“SELECT u FROM User u WHERE u.id IN...

Global site tag (gtag.js) - Google Analytics