JoinAlgorithm.Type
定义
指定联接操作中要使用的联接算法。
允许的值
名称 | 值 | 说明 |
---|---|---|
JoinAlgorithm.Dynamic | 0 | 基于检查两个表的初始行和元数据自动选择联接算法。 |
JoinAlgorithm.PairwiseHash | 1 | 缓冲左表和右表中的行,直到其中一个表完全缓冲,然后执行 LeftHash 或 RightHash,具体取决于哪个表已完全缓冲。 建议仅对小型表使用此算法。 |
JoinAlgorithm.SortMerge | 2 | 基于两个表都是按联接键排序的假设,执行流合并。 虽然这种情况有效,但如果表没有按预期排序,则会返回不正确的结果。 |
JoinAlgorithm.LeftHash | 3 | 将左行缓冲到查找表中,并流式传输右行。 对于每个右行,可通过缓冲查找表找到匹配的左行。 当左表较小且右表中的大部分行预期与左行匹配时,建议使用此算法。 |
JoinAlgorithm.RightHash | 4 | 将右行缓冲到查找表中,并流式传输左行。 对于每个左行,可通过缓冲查找表找到匹配的右行。 当右表较小且左表中的大部分行预期与右行匹配时,建议使用此算法。 |
JoinAlgorithm.LeftIndex | 5 | 在批处理中,使用左表中的键对右表执行基于谓词的查询。 如果右表很大,支持 Table.SelectRows 的折叠,并且包含的行数应与左行匹配,则建议使用此算法。 |
JoinAlgorithm.RightIndex | 6 | 在批处理中,使用右表中的键对左表执行基于谓词的查询。 如果左表很大,支持 Table.SelectRows 的折叠,并且包含一些预期与右行匹配的行,则建议使用此算法。 |