没有INTERSECT的jpql INTERSECT

时间:2011-05-06 08:46:18

标签: sql jpql

我有四个返回整数的查询。

select listOfIntegers from [something]...

编辑:结果为ROWS)

需要一种方法

select ...
intersect
select ...
intersect
select ...
intersect
select ...

但是在jpql中没有这样的交叉。

那么,有没有办法模仿使用其他一些jpql来获得相同结果的行为?

(对于那些不确定相交的人)基本上我需要获得所有选择中出现的所有值......

result from select 1: 1,2,3,4
result from select 2: 1,2,5,6
result from select 3: 1,2,7,8
result from select 4: 1,2,9,0

so the result i want with intersect: 1,2
很多

P.S。没有机会使用除JPQL以外的任何其他东西:(没有原生查询等...

1 个答案:

答案 0 :(得分:3)

你能用这样的东西吗?:

select s1.result
  from select_1 as s1
 where exists (
               select *
                 from select_2 as s2
                where s2.result = s1.result
              )
       and exists (
                   select *
                     from select_3 as s3
                    where s3.result = s1.result
                  )
       and exists (
                   select *
                     from select_4 as s4
                    where s4.result = s1.result
                  );