2017-11-26 3 views
0

예를 들어 필드가 f1 f2 f3 인 엔티티가 있습니다. 그리고 값이 (1 2) (3 4) (5 6) 인 목록이 3 개 있습니다.각 필드의 여러 값 목록에서 가능한 모든 조합을 선택하십시오.

select e from entity where f1=? and f2=? and f3=? 

있지만 목록에서 값의 각 conbination에 대한 :

이 그런 짓을 할 수 있습니까? 따라서 복수 선택을 값으로 대체하려고합니다 :

1 3 5 
1 3 6 
1 4 5 
1 4 6 
2 3 5 
2 3 6 

하나의 쿼리가 필요합니까?

+0

그래서 모든 값을 원하지 않고 하나의 행만 가능하지만 변수 조건은 f1 f2 f3입니까? – Piro

답변

0

예, 여기

가 빠른 예제 : 인수 1,2,3,4,5,6

는 인수의 수는, 당신은 적당한 양의와 ? 토큰의 배열을 생성 할 수 있습니다 미결정 경우에

SELECT e FROM entity WHERE f1 IN (?,?) and f2 IN (?,?) and f3 IN (?,?); 

각 필드에 대한 인수는 바인딩을 위해 올바른 순서로 던져 넣습니다.