TeraData SQL中“TOP”和“SAMPLE”之间的区别

时间:2011-06-16 15:39:16

标签: sql teradata

TeraData SQL中“TOP”和“SAMPLE”有什么区别?它们是一样的吗?

2 个答案:

答案 0 :(得分:13)

来自TOP vs SAMPLE

  

TOP 10表示“排序前10行”   命令“。如果你没有ORDER BY,   然后通过扩展它将是   解释为要求“任何10   行“按任何顺序。优化器是   免费选择最便宜的计划吧   可以尽快找到并停止处理   因为它已找到足够的行返回。

     

如果这个查询是唯一的   在您的系统上运行,TOP可能会出现   总是给你完全一样的   回答,但那种行为不是   保证。

     正如您所观察到的那样,

示例   尝试随机化的额外处理   结果集保持不变   近似分布。非常   简单的水平,例如,它可以   选择一个随机点开始   扫描表和一些   行之间要跳过的行   返回。

答案 1 :(得分:0)

“示例”命令:

Edit/nbextensions config

这将为您提供表中100条不同记录的样本。 每次运行SAMPLE命令都会得到不同的结果。

TOP命令:

Sel * from tablename
sample 100

这将给出表的前100行。 每次运行TOP命令都会为您提供相同的结果。