Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何对多对多关系执行exists查询_Java_Sql_Database_Hibernate_Hql - Fatal编程技术网

Java 如何对多对多关系执行exists查询

Java 如何对多对多关系执行exists查询,java,sql,database,hibernate,hql,Java,Sql,Database,Hibernate,Hql,我有一个疑问: SELECT * FROM A a WHERE NOT EXISTS (SELECT 1 FROM AB m WHERE m.a_id = a.id AND EXISTS (SELECT 1 FROM B b

我有一个疑问:

SELECT * 
FROM   A a 
WHERE  NOT EXISTS (SELECT 1 
                   FROM   AB m 
                   WHERE  m.a_id = a.id 
                          AND EXISTS (SELECT 1 
                                      FROM   B b 
                                      WHERE  m.b_id = b.id 
                                             AND b.TYPE = 'C')) 
我需要用Hql写这个

我已经在
AEntity
BEntity
类中映射了多对多关系,使得
AEntity
具有
linkedBs
BEntity
具有
linkedAs

我希望此查询的版本不太详细

编辑

问题是,对于表
AB
,我们没有任何hibernate实体,因为它只是一个连接表。因此,请提供一种不用显式使用表AB编写此查询的方法。

尝试以下方法:

你可以在EntYTA和EntYTB之间使用笛卡尔积,然后检查中间表中的这对夫妇

是否存在。
SELECT a
FROM entityA a, entityB b
WHERE NOT EXISTS(
    SELECT 'couple'
    FROM ab m
    WHERE m.id = a.id AND m.id = b.id)

这不会给我相同的结果请发布一个数据集和一个期望的结果集