SQL Server 2005中UNION的性能很差(非完成)
时间:2020-03-06 15:02:44 来源:igfitidea点击:
警告:这是从我的系统生成的实际代码:
;WITH RESULTS AS (
SELECT 1174 AS BatchRunID, 'STATINV' AS Program, m.APPL_CD, m.ALBASE, 'CountFocusRecords' AS Measure, COUNT(*) AS Value
FROM [MISWork].[SX_FOCUS_NATIVE_200806] AS m WITH(NOLOCK)
INNER JOIN MISProcess.SXProcessCatalog AS cat WITH(NOLOCK)
ON cat.APPL_CD = m.APPL_CD
AND cat.ALBASE = m.ALBASE
AND COALESCE(cat.ProcessName, 'STATINV') = 'STATINV'
GROUP BY m.APPL_CD, m.ALBASE
UNION
SELECT 1174 AS BatchRunID, 'STATINV' AS Program, c.APPL_CD, c.ALBASE, 'CountBiminiRecords' AS Measure, COUNT(*) AS Value
FROM [MISWork].[SX_STATINV] AS c WITH(NOLOCK)
INNER JOIN MISProcess.SXProcessCatalog AS cat WITH(NOLOCK)
ON cat.APPL_CD = c.APPL_CD
AND cat.ALBASE = c.ALBASE
AND COALESCE(cat.ProcessName, 'STATINV') = 'STATINV'
GROUP BY c.APPL_CD, c.ALBASE
UNION
SELECT 1174 AS BatchRunID, 'STATINV' AS Program, m.APPL_CD, m.ALBASE, 'RecordsInFocusMissingInBimini' AS Measure, COUNT(*) AS Value
FROM [MISWork].[SX_FOCUS_NATIVE_200806] AS m WITH(NOLOCK)
LEFT JOIN [MISWork].[SX_STATINV] AS c WITH(NOLOCK)
ON m.[YEAR] = c.[YEAR]
AND m.[MONTH] = c.[MONTH]
AND m.[BANK_NO] = c.[BANK_NO]
AND m.[COST_CENTER] = c.[COST_CENTER]
AND m.[GLACCOUNT_NO] = c.[GLACCOUNT_NO]
AND m.[CUSTACCOUNT] = c.[CUSTACCOUNT]
AND m.[APPL_CD] = c.[APPL_CD]
AND m.[ALBASE] = c.[ALBASE]
INNER JOIN MISProcess.SXProcessCatalog AS cat WITH(NOLOCK)
ON cat.APPL_CD = m.APPL_CD
AND cat.ALBASE = m.ALBASE
AND COALESCE(cat.ProcessName, 'STATINV') = 'STATINV'
WHERE c.[YEAR] IS NULL
GROUP BY m.APPL_CD, m.ALBASE
UNION
SELECT 1174 AS BatchRunID, 'STATINV' AS Program, c.APPL_CD, c.ALBASE, 'RecordsInBiminiMissingInFocus' AS Measure, COUNT(*) AS Value
FROM [MISWork].[SX_FOCUS_NATIVE_200806] AS m WITH(NOLOCK)
RIGHT JOIN [MISWork].[SX_STATINV] AS c WITH(NOLOCK)
ON m.[YEAR] = c.[YEAR]
AND m.[MONTH] = c.[MONTH]
AND m.[BANK_NO] = c.[BANK_NO]
AND m.[COST_CENTER] = c.[COST_CENTER]
AND m.[GLACCOUNT_NO] = c.[GLACCOUNT_NO]
AND m.[CUSTACCOUNT] = c.[CUSTACCOUNT]
AND m.[APPL_CD] = c.[APPL_CD]
AND m.[ALBASE] = c.[ALBASE]
INNER JOIN MISProcess.SXProcessCatalog AS cat WITH(NOLOCK)
ON cat.APPL_CD = c.APPL_CD
AND cat.ALBASE = c.ALBASE
AND COALESCE(cat.ProcessName, 'STATINV') = 'STATINV'
WHERE m.[YEAR] IS NULL
GROUP BY c.APPL_CD, c.ALBASE
) SELECT * FROM RESULTS ORDER BY Program, APPL_CD, ALBASE, Measure
代码只是坐在那里,没有锁定或者阻塞。
UNION的各个组件分别在几秒钟内返回。该代码通常可用于检查STAT组中所有其他程序的输出结果,但是只是停止了该程序。
卸下CTE,没有效果,它坐在那里30分钟/一个小时,不过我们需要等待多长时间才能取消。
删除UNION,然后在11秒内返回4个结果集,所有4个结果集共有19条记录。
仅将前两个一起运行可以正常运行,仅将后两个一起运行也可以。一起前三,也很好。
为了满足其他要求,我已经修改了将它们输出到#temp表中的代码,因此我只是将其更改为将它们依次输出到#temp表中,但是我从未见过SQL会像这样停止没有任何遮挡物或者任何东西的证据。
解决方案
更改为UNION ALL,因为我们再也不会重复了(" Measure"列硬编码为不同的)。 UNION必须首先对行进行排序,然后找到重复项并消除。
我真正的猜测是这是并行化问题。尝试在最后添加OPTION(MAXDOP 1)。
如果我们可以XML格式发布查询执行计划,则可以帮助我们确定查询的哪些部分引起了问题。在SSMS中,单击"查询","显示估计的执行计划",然后在出现时,右键单击它并另存为XML。
我已经进行了回归测试200808,但是基本查询是相同的,但具有不同的batchrunid和不同的已知良好表。
<?xml version="1.0"?>
<ShowPlanXML xmlns="http://schemas.microsoft.com/sqlserver/2004/07/showplan" Version="1.0" Build="9.00.3239.00">
<BatchSequence>
<Batch>
<Statements>
<StmtSimple StatementText=" ;WITH RESULTS AS ( SELECT 1251 AS BatchRunID, 'STATINV' AS Program, m.APPL_CD, m.ALBASE, 'CountFocusRecords' AS Measure, COUNT(*) AS Value FROM [MISWork].[SX_FOCUS_NATIVE_200808] AS m WITH(NOLOCK) INNER JOIN MISProcess.SXProcessCatalog AS cat WITH(NOLOCK) ON cat.APPL_CD = m.APPL_CD AND cat.ALBASE = m.ALBASE AND COALESCE(cat.ProcessName, 'STATINV') = 'STATINV' GROUP BY m.APPL_CD, m.ALBASE UNION SELECT 1251 AS BatchRunID, 'STATINV' AS Program, c.APPL_CD, c.ALBASE, 'CountBiminiRecords' AS Measure, COUNT(*) AS Value FROM [MISWork].[SX_STATINV] AS c WITH(NOLOCK) INNER JOIN MISProcess.SXProcessCatalog AS cat WITH(NOLOCK) ON cat.APPL_CD = c.APPL_CD AND cat.ALBASE = c.ALBASE AND COALESCE(cat.ProcessName, 'STATINV') = 'STATINV' GROUP BY c.APPL_CD, c.ALBASE UNION SELECT 1251 AS BatchRunID, 'STATINV' AS Program, m.APPL_CD, m.ALBASE, 'RecordsInFocusMissingInBimini' AS Measure, COUNT(*) AS Value FROM [MISWork].[SX_FOCUS_NATIVE_200808] AS m WITH(NOLOCK) LEFT JOIN [MISWork].[SX_STATINV] AS c WITH(NOLOCK) ON m.[YEAR] = c.[YEAR] AND m.[MONTH] = c.[MONTH] AND m.[BANK_NO] = c.[BANK_NO] AND m.[COST_CENTER] = c.[COST_CENTER] AND m.[GLACCOUNT_NO] = c.[GLACCOUNT_NO] AND m.[CUSTACCOUNT] = c.[CUSTACCOUNT] AND m.[APPL_CD] = c.[APPL_CD] AND m.[ALBASE] = c.[ALBASE] INNER JOIN MISProcess.SXProcessCatalog AS cat WITH(NOLOCK) ON cat.APPL_CD = m.APPL_CD AND cat.ALBASE = m.ALBASE AND COALESCE(cat.ProcessName, 'STATINV') = 'STATINV' WHERE c.[YEAR] IS NULL GROUP BY m.APPL_CD, m.ALBASE UNION SELECT 1251 AS BatchRunID, 'STATINV' AS Program, c.APPL_CD, c.ALBASE, 'RecordsInBiminiMissingInFocus' AS Measure, COUNT(*) AS Value FROM [MISWork].[SX_FOCUS_NATIVE_200808] AS m WITH(NOLOCK) RIGHT JOIN [MISWork].[SX_STATINV] AS c WITH(NOLOCK) ON m.[YEAR] = c.[YEAR] AND m.[MONTH] = c.[MONTH] AND m.[BANK_NO] = c.[BANK_NO] AND m.[COST_CENTER] = c.[COST_CENTER] AND m.[GLACCOUNT_NO] = c.[GLACCOUNT_NO] AND m.[CUSTACCOUNT] = c.[CUSTACCOUNT] AND m.[APPL_CD] = c.[APPL_CD] AND m.[ALBASE] = c.[ALBASE] INNER JOIN MISProcess.SXProcessCatalog AS cat WITH(NOLOCK) ON cat.APPL_CD = c.APPL_CD AND cat.ALBASE = c.ALBASE AND COALESCE(cat.ProcessName, 'STATINV') = 'STATINV' WHERE m.[YEAR] IS NULL GROUP BY c.APPL_CD, c.ALBASE ) SELECT * FROM RESULTS ORDER BY Program, APPL_CD, ALBASE, Measure " StatementId="1" StatementCompId="1" StatementType="SELECT" StatementSubTreeCost="1209.5" StatementEstRows="13965.1" StatementOptmLevel="FULL">
<StatementSetOptions QUOTED_IDENTIFIER="false" ARITHABORT="true" CONCAT_NULL_YIELDS_NULL="false" ANSI_NULLS="false" ANSI_PADDING="false" ANSI_WARNINGS="false" NUMERIC_ROUNDABORT="false"/>
<QueryPlan CachedPlanSize="504" CompileTime="1244" CompileCPU="1099" CompileMemory="5016">
<MissingIndexes>
<MissingIndexGroup Impact="29.2539">
<MissingIndex Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]">
<ColumnGroup Usage="EQUALITY">
<Column Name="[APPL_CD]" ColumnId="7"/>
<Column Name="[ALBASE]" ColumnId="8"/>
</ColumnGroup>
<ColumnGroup Usage="INCLUDE">
<Column Name="[YEAR]" ColumnId="1"/>
<Column Name="[MONTH]" ColumnId="2"/>
<Column Name="[BANK_NO]" ColumnId="3"/>
<Column Name="[COST_CENTER]" ColumnId="4"/>
<Column Name="[GLACCOUNT_NO]" ColumnId="5"/>
<Column Name="[CUSTACCOUNT]" ColumnId="6"/>
</ColumnGroup>
</MissingIndex>
</MissingIndexGroup>
<MissingIndexGroup Impact="29.6796">
<MissingIndex Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]">
<ColumnGroup Usage="EQUALITY">
<Column Name="[APPL_CD]" ColumnId="7"/>
<Column Name="[ALBASE]" ColumnId="8"/>
</ColumnGroup>
</MissingIndex>
</MissingIndexGroup>
</MissingIndexes>
<RelOp NodeId="0" PhysicalOp="Parallelism" LogicalOp="Gather Streams" EstimateRows="13965.1" EstimateIO="0" EstimateCPU="0.121489" AvgRowSize="45" EstimatedTotalSubtreeCost="1209.5" Parallel="1" EstimateRebinds="0" EstimateRewinds="0">
<OutputList>
<ColumnReference Column="Union1039"/>
<ColumnReference Column="Union1040"/>
<ColumnReference Column="Union1041"/>
<ColumnReference Column="Union1042"/>
<ColumnReference Column="Union1043"/>
<ColumnReference Column="Union1044"/>
</OutputList>
<Parallelism>
<OrderBy>
<OrderByColumn Ascending="1">
<ColumnReference Column="Union1041"/>
</OrderByColumn>
<OrderByColumn Ascending="1">
<ColumnReference Column="Union1042"/>
</OrderByColumn>
<OrderByColumn Ascending="1">
<ColumnReference Column="Union1043"/>
</OrderByColumn>
</OrderBy>
<RelOp NodeId="1" PhysicalOp="Sort" LogicalOp="Sort" EstimateRows="13965.1" EstimateIO="0.00281532" EstimateCPU="0.220682" AvgRowSize="45" EstimatedTotalSubtreeCost="1209.37" Parallel="1" EstimateRebinds="0" EstimateRewinds="0">
<OutputList>
<ColumnReference Column="Union1039"/>
<ColumnReference Column="Union1040"/>
<ColumnReference Column="Union1041"/>
<ColumnReference Column="Union1042"/>
<ColumnReference Column="Union1043"/>
<ColumnReference Column="Union1044"/>
</OutputList>
<MemoryFractions Input="0.0191727" Output="1"/>
<Sort Distinct="0">
<OrderBy>
<OrderByColumn Ascending="1">
<ColumnReference Column="Union1041"/>
</OrderByColumn>
<OrderByColumn Ascending="1">
<ColumnReference Column="Union1042"/>
</OrderByColumn>
<OrderByColumn Ascending="1">
<ColumnReference Column="Union1043"/>
</OrderByColumn>
</OrderBy>
<RelOp NodeId="2" PhysicalOp="Concatenation" LogicalOp="Concatenation" EstimateRows="13965.1" EstimateIO="0" EstimateCPU="0.000349132" AvgRowSize="45" EstimatedTotalSubtreeCost="1209.15" Parallel="1" EstimateRebinds="0" EstimateRewinds="0">
<OutputList>
<ColumnReference Column="Union1039"/>
<ColumnReference Column="Union1040"/>
<ColumnReference Column="Union1041"/>
<ColumnReference Column="Union1042"/>
<ColumnReference Column="Union1043"/>
<ColumnReference Column="Union1044"/>
</OutputList>
<Concat>
<DefinedValues>
<DefinedValue>
<ColumnReference Column="Union1039"/>
<ColumnReference Column="Expr1006"/>
<ColumnReference Column="Expr1014"/>
<ColumnReference Column="Expr1025"/>
<ColumnReference Column="Expr1036"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Column="Union1040"/>
<ColumnReference Column="Expr1007"/>
<ColumnReference Column="Expr1015"/>
<ColumnReference Column="Expr1026"/>
<ColumnReference Column="Expr1037"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Column="Union1041"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_STATINV]" Alias="[c]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_STATINV]" Alias="[c]" Column="APPL_CD"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Column="Union1042"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_STATINV]" Alias="[c]" Column="ALBASE"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_STATINV]" Alias="[c]" Column="ALBASE"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Column="Union1043"/>
<ColumnReference Column="Expr1008"/>
<ColumnReference Column="Expr1016"/>
<ColumnReference Column="Expr1027"/>
<ColumnReference Column="Expr1038"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Column="Union1044"/>
<ColumnReference Column="Expr1005"/>
<ColumnReference Column="Expr1013"/>
<ColumnReference Column="Expr1024"/>
<ColumnReference Column="Expr1035"/>
</DefinedValue>
</DefinedValues>
<RelOp NodeId="4" PhysicalOp="Compute Scalar" LogicalOp="Compute Scalar" EstimateRows="7140" EstimateIO="0" EstimateCPU="0.0001785" AvgRowSize="42" EstimatedTotalSubtreeCost="362.728" Parallel="1" EstimateRebinds="0" EstimateRewinds="0">
<OutputList>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
<ColumnReference Column="Expr1005"/>
<ColumnReference Column="Expr1006"/>
<ColumnReference Column="Expr1007"/>
<ColumnReference Column="Expr1008"/>
</OutputList>
<ComputeScalar>
<DefinedValues>
<DefinedValue>
<ColumnReference Column="Expr1006"/>
<ScalarOperator ScalarString="(1251)">
<Const ConstValue="(1251)"/>
</ScalarOperator>
</DefinedValue>
<DefinedValue>
<ColumnReference Column="Expr1007"/>
<ScalarOperator ScalarString="'STATINV'">
<Const ConstValue="'STATINV'"/>
</ScalarOperator>
</DefinedValue>
<DefinedValue>
<ColumnReference Column="Expr1008"/>
<ScalarOperator ScalarString="'CountFocusRecords'">
<Const ConstValue="'CountFocusRecords'"/>
</ScalarOperator>
</DefinedValue>
</DefinedValues>
<RelOp NodeId="6" PhysicalOp="Compute Scalar" LogicalOp="Compute Scalar" EstimateRows="7140" EstimateIO="0" EstimateCPU="0.0001785" AvgRowSize="23" EstimatedTotalSubtreeCost="362.728" Parallel="1" EstimateRebinds="0" EstimateRewinds="0">
<OutputList>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
<ColumnReference Column="Expr1005"/>
</OutputList>
<ComputeScalar>
<DefinedValues>
<DefinedValue>
<ColumnReference Column="Expr1005"/>
<ScalarOperator ScalarString="CONVERT_IMPLICIT(int,[globalagg1083],0)">
<Convert DataType="int" Style="0" Implicit="1">
<ScalarOperator>
<Identifier>
<ColumnReference Column="globalagg1083"/>
</Identifier>
</ScalarOperator>
</Convert>
</ScalarOperator>
</DefinedValue>
</DefinedValues>
<RelOp NodeId="7" PhysicalOp="Hash Match" LogicalOp="Aggregate" EstimateRows="7140" EstimateIO="0" EstimateCPU="0.114864" AvgRowSize="27" EstimatedTotalSubtreeCost="362.728" Parallel="1" EstimateRebinds="0" EstimateRewinds="0">
<OutputList>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
<ColumnReference Column="globalagg1083"/>
</OutputList>
<MemoryFractions Input="0.5" Output="0.980827"/>
<Hash>
<DefinedValues>
<DefinedValue>
<ColumnReference Column="globalagg1083"/>
<ScalarOperator ScalarString="SUM([partialagg1082])">
<Aggregate Distinct="0" AggType="SUM">
<ScalarOperator>
<Identifier>
<ColumnReference Column="partialagg1082"/>
</Identifier>
</ScalarOperator>
</Aggregate>
</ScalarOperator>
</DefinedValue>
</DefinedValues>
<HashKeysBuild>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
</HashKeysBuild>
<BuildResidual>
<ScalarOperator ScalarString="[DUASFIN].[MISWork].[SX_FOCUS_NATIVE_200808].[APPL_CD] as [m].[APPL_CD] = [DUASFIN].[MISWork].[SX_FOCUS_NATIVE_200808].[APPL_CD] as [m].[APPL_CD] AND [DUASFIN].[MISWork].[SX_FOCUS_NATIVE_200808].[ALBASE] as [m].[ALBASE] = [DUASFIN].[MISWork].[SX_FOCUS_NATIVE_200808].[ALBASE] as [m].[ALBASE]">
<Logical Operation="AND">
<ScalarOperator>
<Compare CompareOp="IS">
<ScalarOperator>
<Identifier>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
</Identifier>
</ScalarOperator>
<ScalarOperator>
<Identifier>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
</Identifier>
</ScalarOperator>
</Compare>
</ScalarOperator>
<ScalarOperator>
<Compare CompareOp="IS">
<ScalarOperator>
<Identifier>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
</Identifier>
</ScalarOperator>
<ScalarOperator>
<Identifier>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
</Identifier>
</ScalarOperator>
</Compare>
</ScalarOperator>
</Logical>
</ScalarOperator>
</BuildResidual>
<RelOp NodeId="8" PhysicalOp="Parallelism" LogicalOp="Repartition Streams" EstimateRows="28560" EstimateIO="0" EstimateCPU="0.0614707" AvgRowSize="27" EstimatedTotalSubtreeCost="362.613" Parallel="1" EstimateRebinds="0" EstimateRewinds="0">
<OutputList>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
<ColumnReference Column="partialagg1082"/>
</OutputList>
<Parallelism PartitioningType="Hash">
<PartitionColumns>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
</PartitionColumns>
<RelOp NodeId="9" PhysicalOp="Hash Match" LogicalOp="Partial Aggregate" EstimateRows="28560" EstimateIO="0" EstimateCPU="1.7277" AvgRowSize="27" EstimatedTotalSubtreeCost="362.551" Parallel="1" EstimateRebinds="0" EstimateRewinds="0">
<OutputList>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
<ColumnReference Column="partialagg1082"/>
</OutputList>
<MemoryFractions Input="0" Output="0"/>
<Hash>
<DefinedValues>
<DefinedValue>
<ColumnReference Column="partialagg1082"/>
<ScalarOperator ScalarString="COUNT(*)">
<Aggregate Distinct="0" AggType="COUNT*"/>
</ScalarOperator>
</DefinedValue>
</DefinedValues>
<HashKeysBuild>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
</HashKeysBuild>
<BuildResidual>
<ScalarOperator ScalarString="[DUASFIN].[MISWork].[SX_FOCUS_NATIVE_200808].[APPL_CD] as [m].[APPL_CD] = [DUASFIN].[MISWork].[SX_FOCUS_NATIVE_200808].[APPL_CD] as [m].[APPL_CD] AND [DUASFIN].[MISWork].[SX_FOCUS_NATIVE_200808].[ALBASE] as [m].[ALBASE] = [DUASFIN].[MISWork].[SX_FOCUS_NATIVE_200808].[ALBASE] as [m].[ALBASE]">
<Logical Operation="AND">
<ScalarOperator>
<Compare CompareOp="IS">
<ScalarOperator>
<Identifier>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
</Identifier>
</ScalarOperator>
<ScalarOperator>
<Identifier>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
</Identifier>
</ScalarOperator>
</Compare>
</ScalarOperator>
<ScalarOperator>
<Compare CompareOp="IS">
<ScalarOperator>
<Identifier>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
</Identifier>
</ScalarOperator>
<ScalarOperator>
<Identifier>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
</Identifier>
</ScalarOperator>
</Compare>
</ScalarOperator>
</Logical>
</ScalarOperator>
</BuildResidual>
<RelOp NodeId="10" PhysicalOp="Hash Match" LogicalOp="Inner Join" EstimateRows="879583" EstimateIO="0" EstimateCPU="62.0602" AvgRowSize="19" EstimatedTotalSubtreeCost="360.824" Parallel="1" EstimateRebinds="0" EstimateRewinds="0">
<OutputList>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
</OutputList>
<MemoryFractions Input="1" Output="0.5"/>
<Hash>
<DefinedValues/>
<HashKeysBuild>
<ColumnReference Database="[DUASFIN]" Schema="[MISProcess]" Table="[SXProcessCatalog]" Alias="[cat]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISProcess]" Table="[SXProcessCatalog]" Alias="[cat]" Column="ALBASE"/>
</HashKeysBuild>
<HashKeysProbe>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="APPL_CD"/>
<ColumnReference Database="[DUASFIN]" Schema="[MISWork]" Table="[SX_FOCUS_NATIVE_200808]" Alias="[m]" Column="ALBASE"/>
</HashKeysProbe>
<ProbeResidual>

