greenplumn CPhysicalLeftSemiHashJoin 代码
文件路径:/src/backend/gporca/libgpopt/src/operators/CPhysicalLeftSemiHashJoin.cpp
/---------------------------------------------------------------------------
/ Greenplum Database
/ Copyright (C) 2012 EMC Corp.
/
/ @filename:
/ CPhysicalLeftSemiHashJoin.cpp
/
/ @doc:
/ Implementation of left semi hash join operator
/---------------------------------------------------------------------------
#include "gpopt/operators/CPhysicalLeftSemiHashJoin.h"
#include "gpos/base.h"
#include "gpopt/base/CDistributionSpecHashed.h"
#include "gpopt/base/CUtils.h"
using namespace gpopt;
/---------------------------------------------------------------------------
/ @function:
/ CPhysicalLeftSemiHashJoin::CPhysicalLeftSemiHashJoin
/
/ @doc:
/ Ctor
/
/---------------------------------------------------------------------------
CPhysicalLeftSemiHashJoin::CPhysicalLeftSemiHashJoin(
CMemoryPool *mp, CExpressionArray *pdrgpexprOuterKeys,
CExpressionArray *pdrgpexprInnerKeys, IMdIdArray *hash_opfamilies,
CXform::EXformId origin_xform)
: CPhysicalHashJoin(mp, pdrgpexprOuterKeys, pdrgpexprInnerKeys,
hash_opfamilies, origin_xform)
{
}
/---------------------------------------------------------------------------
/ @function:
/ CPhysicalLeftSemiHashJoin::~CPhysicalLeftSemiHashJoin
/
/ @doc:
/ Dtor
/
/---------------------------------------------------------------------------
CPhysicalLeftSemiHashJoin::~CPhysicalLeftSemiHashJoin() = default;
/---------------------------------------------------------------------------
/ @function:
/ CPhysicalLeftSemiHashJoin::FProvidesReqdCols
/
/ @doc:
/ Check if required columns are included in output columns
/
/---------------------------------------------------------------------------
BOOL
CPhysicalLeftSemiHashJoin::FProvidesReqdCols(CExpressionHandle &exprhdl,
CColRefSet *pcrsRequired,
ULONG / ulOptReq
) const
{
/ left semi join only propagates columns from left child
return FOuterProvidesReqdCols(exprhdl, pcrsRequired);
}
/ EOF
相关信息
相关文章
greenplumn CExpressionFactorizer 源码
greenplumn CExpressionHandle 源码
greenplumn CExpressionPreprocessor 源码
greenplumn CExpressionUtils 源码