2014-03-26 1 views
0

이것은 Birt 질문이 아니며 SQL 자체로 해결 될 수 있습니다. 아래에서 내 검색어를 찾으십시오.Birt에서 한 데이터 집합의 결과를 다른 데이터 집합의 입력으로 전달할 수 있습니까

복잡한 쿼리가 있습니다. 6 개의 작은 쿼리가 유니온 및 교차로 결합되었습니다. 모든 작은 쿼리에는 일반적인 내부 쿼리가 있습니다. 이제 쿼리의 일부로이 쿼리를 작성하면이 내부 쿼리가 6 번 실행되므로 필자는이를 피한다. 이 내부 쿼리의 값을 Main 쿼리에 직접 전달하려고합니다.

기본 쿼리 템플릿은 다음과 같습니다.

Select A_ID id from A where A.TYPE in (select Type from My_Type_List where Type_id=?) 
UNION 
Select B_ID id from B where B.TYPE in (select Type from MY_TYPE_LIST where Type_id=?) 
UNION 
Select C_ID id from C where C.TYPE in (select Type from MY_TYPE_LIST where Type_id=?) 

이 쿼리를 최적화하거나 내부 쿼리의 값을 매개 변수로 주 데이터 집합에 전달할 수있는 방법이 있습니까?

답변

1

일반적인 접근 방식은 첫 번째 쿼리를 실행하고 전역 JavaScript 개체에서 결과를 수집하는 것입니다.

그런 다음 JavaScript를 사용하여 요소를 다른 곳에서 재사용 할 수 있습니다.

유일한 대안은 두 번째 쿼리에서 내부 조인을 사용하는 것입니다.

관련 문제