`

Hibernate With关键字

 
阅读更多
对于left join
sql可以写:
select * from A left jion B on (A.cid = B.cid and B.l > 10)
如果你把B.l > 10写在where条件中会对连接后的结果集进行过滤,可能会影响结果
而写在on中是对符合的条件结果集进行联接,对A不会有影响

简单描述上面的区别,所以在Hibernate中我们不能将B.l写在where中,那在Hibernate中如何写如上Sql的条件呢
Hibernate提供了With关键字

因此可以 A left join A.b as B with B.l > 10
分享到:
评论

相关推荐

    hibernate的使用心得

    `with`关键字用于提供额外的连接条件,类似于SQL中的`on`关键字,可用于非等值连接查询。 隐式连接和显示连接之间存在两个主要区别: 1. 隐式连接在底层转换为SQL92的内连接,而显示连接转换为SQL99的多表连接。 2....

    JSF+Spring+Hibernate 分页显示

    在分页查询时,我们可以使用`OFFSET`和`FETCH NEXT`关键字,或者`TOP`和`ORDER BY`结合`WITH TIES`来实现分页。 **分页实现步骤** 1. **设计数据库模型**:根据业务需求定义实体类,并使用Hibernate的注解配置对应...

    hibernate 的HQL 语言入门与提高

    此外,`with` 关键字允许在连接时添加额外的条件。 为了优化性能,可以使用 `fetch` 关键字实现预加载关联对象,避免懒加载导致的额外数据库交互。例如,`from Cat as cat inner join fetch cat.mate` 将在获取猫的...

    Hibernate查询语言(HQL)

    ### Hibernate 查询语言 (HQL) #### 一、简介 Hibernate 查询语言(HQL)是一种功能强大的查询语言,它与 SQL 在语法上有一定的相似性,但 HQL 被设计成面向对象的语言,能够理解诸如继承、多态和关联等概念。这种...

    hql语句经典教程

    `with`关键字允许你在连接时添加额外条件,例如: ```sql from Cat as cat left join cat.kittens as kitten with kitten.bodyWeight > 10.0 ``` 这将返回体重超过10.0的幼猫。 ### 5. `fetch`连接策略 `fetch`...

    HQL语言教程[归类].pdf

    HQL还提供了`with`关键字,允许在连接条件中添加额外的限制,如`from Cat as cat left join cat.kittens as kitten with kitten.bodyWeight > 10.0`。`fetch`连接则用于预加载关联对象或集合,避免懒加载,以优化...

    ID生成策略

    CREATE SEQUENCE seq_name INCREMENT BY 1 START WITH 1; ``` 插入新记录时,可以使用`seq_name.NEXTVAL`来获取下一个序列值: ```sql INSERT INTO tbl_name (id, name) VALUES (seq_name.NEXTVAL, 'Jim Liu'); ``...

    java异常解决方案.docx

    * org.springframework.orm.hibernate3.HibernateSystemException: Don't change the reference to a collection with cascade="all-delete-orphan" + 解决方案:不要在实体类中修改带有 cascade="all-delete-...

    java(jsp) 分页

    - **SQL Server 2000** 使用TOP和子查询实现分页,或者利用ROW_NUMBER()函数配合WITH语句实现。 - **Oracle** 可以使用ROWNUM伪列进行分页,但这种方法有性能问题,更推荐使用ROWNUM配合子查询或者Oracle 12c引入...

    总结问题集合

    START WITH id = 10 CONNECT BY PRIOR pid = id; ``` 这条SQL语句将从ID为10的记录开始,递归地查找其所有子节点,直到树状结构的最底层。 ### 4. SQL Limit 和 Rownum 在SQL查询中,`LIMIT`和`Rownum`用于限制...

    java视频教程Day01 免费

    2. Identifier,keyword and types (标示符, 关键字和数据类型) 3. Expression and Flow Control (表达式和流控制) 4. Array (数组) 5. Object-Oriented Programming I (类与对象I) 6. Object-Oriented ...

    AJAX无刷新分页(JAVA)[新]

    在旧版AJAX分页中,可能使用了简单的GET或POST请求来获取数据,而在新版中,可能采用了更高效的方式,如JSONP(JSON with Padding)或者CORS(Cross-Origin Resource Sharing)来跨域获取数据,或者使用了RESTful ...

    整理后java开发全套达内学习笔记(含练习)

    (a class is designed with a single, well-focoused purpose. 应该不止这点) command n. 命令,指令 [kә'mɑ:nd](指挥, 控制) (command-line 命令行) Comments [java] 文本注释 ['kɒments] compile [java] v....

    某外企java笔试题

    关闭数据库资源如`ResultSet`,`Statement`和`Connection`时,推荐使用try-with-resources语句以确保异常处理和资源关闭。 3. 服务器与数据库选择:建立网站时,服务器选择可能包括Apache Tomcat、Nginx等,数据库...

    Java面试宝典(高级篇).docx

    8. **JPA与Hibernate**:理解对象关系映射(ORM)原理,掌握JPA规范和Hibernate实现,包括实体管理、事务处理和SQL自动生成。 9. **网络编程**:理解TCP/IP协议,套接字编程,以及HTTP协议的工作原理。 10. **...

    java面试题

    还会涉及JDBC和高级特性,如连接池(C3P0、Druid、HikariCP)以及ORM框架(如Hibernate、MyBatis)的使用。 10. **其他**:网络编程(TCP/IP、HTTP协议)、IO流、NIO、反射、Lambda表达式、Stream API、模块化系统...

    mysqloraclesqlser2000数据库分页

    MySQL提供了LIMIT和OFFSET关键字来实现分页。LIMIT用于指定每一页显示的记录数量,OFFSET用于指定从哪一条记录开始。例如,如果你想获取第2页,每页10条记录的数据,SQL语句可能是这样的: ```sql SELECT * FROM ...

    java面试——深圳-乐信-Java高级.zip

    - 线程同步机制:synchronized关键字,volatile关键字,Lock接口(如ReentrantLock)。 - 死锁、活锁、饥饿现象及避免策略。 - 线程通信:wait()、notify()、notifyAll()方法,生产者消费者模型。 - ...

Global site tag (gtag.js) - Google Analytics