`
hanwn123
  • 浏览: 24157 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

关于JPQL中where子句中is empty的问题

阅读更多

    请高手帮忙解释下WHERE子句中IS EMPTY的意思。

    我理解是在一个表User中,数据如下。

    +----+-----------+-----------+------------+---------------------+
    | id | username | userage | usergender | userhobby    |
    +----+-----------+-----------+------------+---------------------+
    | 10 | nana       |      20    |          1    |                           |
    | 11 | longbao  |      20    |          1    |                           |
    | 12 | hali         |      20    |          1    | sing dancing       |
    +----+-----------+-----------+------------+---------------------+

    JPQL:select u from User u where u.userhobby IS EMPTY;

    应该出来的内容为前两条记录,但是不是是检索不到,而且console中打出来的hibernate语句为:

        select
        user0_.id as id3_,
        user0_.userage as userage3_,
        user0_.usergender as usergender3_,
        user0_.userhobby as userhobby3_,
        user0_.username as username3_
    from
        test123.user user0_
    where
        not (exists (select
            user0_.id
        from
            test123.user user0_))

    这该怎么理解呢?

 

同事“秀才”点了一下,应该是对于一对多的关系才会有这中用法。

用户表中的用户对应多个地址,但是通过这个来检索出没有地址登记的用户。

分享到:
评论

相关推荐

    EJB的JPQL语法

    在EJB中,**JPQL(Java Persistence Query Language)**是用于查询持久化对象的面向对象的查询语言,类似于SQL但专为ORM(Object-Relational Mapping)框架设计,如JPA(Java Persistence API)。本文将深入探讨EJB...

    jpql-1.2.1.zip

    在提供的标签“JPQL”中,我们可以推断出该压缩包的核心内容是关于JPQL的使用,包括其语法、功能和在实际项目中的应用。 压缩包内的文件名列表提供了进一步的线索: 1. **antlr4-runtime-4.11.1.jar**:ANTLR是一个...

    EJB3.0查询语句JPQL用法

    Java企业版(Java EE)中的EJB3.0引入了一种新的查询语言,即JPQL(Java Persistence Query Language)。JPQL是EJB2中EJB QL的扩展,旨在简化Java应用程序对持久化实体的访问和操作。本文将深入探讨JPQL的基本概念、...

    JPA的JPQL语法总结

    SELECT p FROM Player p WHERE p.teams IS EMPTY ``` 这条语句返回没有关联任何团队的`Player`记录。 - **BETWEEN**:用于指定一个值的范围,如: ```sql SELECT DISTINCT p FROM Player p WHERE p.salary ...

    EJB3查询JPQL解析

    Java Enterprise Edition (Java EE) 中的EJB 3.0引入了Java持久性查询语言(JPQL),这是一种专为访问和导航Java应用程序中的实体实例设计的语言。JPQL是对早期EJB QL的扩展和改进,它允许开发者以面向对象的方式来...

    EJB_JPQL语言详解

    1. **子查询**:可以在WHERE子句中嵌套一个完整的JPQL查询,用于复杂的过滤条件。 2. **集合操作**:可以对集合进行操作,如IN、NOT IN、ANY、ALL、SOME等。 3. **CASE表达式**:类似于SQL的CASE语句,用于条件判断...

    介绍jpa和jpql

    JPA(Java Persistence API)和JPQL(Java Persistence Query Language)是Java EE平台中用于数据持久化的标准规范,它们为对象关系映射(ORM)提供了一种框架。 JPA是一组用于Java持久化领域的API和运行时环境规范...

    JPQL package

    在这个"JPQL package"中,"codebase"可能包含了使用JPQL实现的示例代码或库文件,而"lib"可能存放了JPA相关的库文件,例如Hibernate或EclipseLink,这些都是实现JPQL功能所必需的依赖。 总之,JPQL在Windchill开发...

    JPA JPQL常用

    JPA(Java Persistence API)是Java平台上的持久化规范,它提供了一种在Java应用程序中管理关系数据的标准方法。JPQL(Java Persistence Query Language)是JPA的一部分,它是一种面向对象的查询语言,类似于SQL,但...

    Windchill development with JPQL

    在查询业务对象时,FROM子句必须指定业务对象的全名,并且在SELECT子句中应包含要返回的业务对象的别名。而对于物理表的查询,则可以参考SQL的写法。 JPQL还可以执行多业务对象(BO)的查询,通过连接多个业务对象...

    09_传智播客JPA详解_使用JPQL语句进行查询

    1. **JPQL基础**:讲解JPQL的基本语法,包括如何选择、从哪个实体中选择、以及如何使用WHERE子句过滤结果。比如,`SELECT e FROM Entity e` 就是一个基本的查询所有Entity实例的JPQL语句。 2. **聚合函数**:介绍...

    09_JPA详解_使用JPQL语句进行查询.zip

    4. **JPQL查询**:JPQL查询语法包括选择(SELECT)、从(FROM)、WHERE子句、GROUP BY、HAVING和ORDER BY等。例如,`SELECT e FROM Entity e WHERE e.name = 'example'`会返回所有名字为'example'的实体。 5. **...

    jpql-package-1.0.1

    在1.0.1版中,JPQL可能已经加入了如`WITH`子句,用于定义临时计算字段或子查询结果的别名,这大大提高了查询的灵活性。此外,可能还增加了`OVER()`窗口函数,使得在分组、排序后的数据上进行复杂计算成为可能,如...

    JPA之使用JPQL语句进行增删改查

    JPQL语句的基本结构包括select子句、from子句、where子句、order by子句等。 二、JPQL查询语句 JPQL查询语句可以用于检索实体和来自数据库的其他持久化数据。例如,下面是一个简单的JPQL查询语句: ```java List...

    jpql查询[定义].pdf

    在JPQL中,你可以创建各种类型的查询,包括选择、聚合、连接、子查询等。例如,你可以从`Person`实体中选取所有`personid`为指定值的记录,如下所示: ```java Query query = em.createQuery("SELECT p FROM Person...

    Windchill-development-using-JPQL-v1.2.1

    对业务对象查询时,`FROM`子句需指定业务对象的全类名,如`FROM wt.part.WTPart A`,并确保在`SELECT`子句中包含别名,如`SELECT A`。对物理表的查询则更接近于SQL,可以自由指定表名。例如: ```java QueryResult...

    JPA 动态查询 Criteria JPQL 语法详解

    在本文中,我们将详解 Criteria API 和 JPQL 语法的详细信息。 Criteria API 是什么? Criteria API 是 JPA 2.0 中的一种查询机制,它允许开发者在运行时构建查询语句。Criteria API 提供了一种类型安全的查询方式...

    jpql.spring.example:JPQL性能示例

    绩效测试JPQL 真实的睾丸残渣或残渣2019-09-19 20:40:21.454 INFO 25798 --- [ main] com.bycasseb.jpql.JPQLTests : 43:796000000 : Implícito2019-09-19 20:40:21.455 INFO 25798 --- [ main] ...

    jpa查询[借鉴].pdf

    例如,`IS EMPTY`可以用来找出没有选项的调查主题,而`MEMBER OF`则用于检查元素是否存在于集合中,这样可以筛选出特定的`PollTopic`。 总之,JPA的查询语言提供了丰富的表达能力,使得开发人员能够以对象的方式...

Global site tag (gtag.js) - Google Analytics