2016-11-18 7 views
0

varchar2 유형의 파티션 컬럼이있는 외부 하이브 테이블이 있습니다. 이 테이블은 조인 조건의 파티션 필드와 함께 다른 테이블에 외부 조인됩니다.하이브 설명 플랜은 파티션 유형이 varchar2 인 경우 모든 파티션을 표시합니다.

아래 쿼리에서 테이블 b의 b2 열은 varchar2 유형의 파티션 열이고 테이블 a의 a2는 값이 1뿐 아니라 varchar2 유형입니다.

SELECT a.a1, b.b1 FROM a LEFT OUTER JOIN b ON (a.a2=b.b2) WHERE a.a3='2016-01-31'

내가 내가 표 B에서 모든 파티션을 볼 수 위의 쿼리 계획을 EXPLAIN 발행

. 어떻게 mapper가 테이블 b를 읽을 때 a2의 값과 같을 때만 테이블 b에서 파티션을 얻을 수 있습니까?

답변

0

아래의 순서대로 실행/평면 계획을 선택하십시오.

FROM 
ON 
JOIN 
WHERE 
GROUP BY 
WITH CUBE or WITH ROLLUP 
HAVING 
SELECT 
DISTINCT 
ORDER BY 
TOP 

설명 :

쿼리 가입이 어디서 첫 번째 조건을 결합 규칙에 따라 다음 평가 될 위치를 따라서 유 계획

을 표 B의 모든 파티션을보고있는 절