top子句和set rocount之间的区别

时间:2013-03-27 09:55:23

标签: sybase

top子句和set rowcount之间有什么区别..我正在对存储过程进行性能调整...建议在过程中选择前1个记录。

1 个答案:

答案 0 :(得分:2)

顶部设置rowcount 非常相似,但顶部有一些限制和限制设置rowcount 没有。

来自Sybase Reference Manual: Commands

  

top unsigned_integer   与select ... into语句一起使用以限制目标表中插入的行数。 这与set rowcount不同,set rowcount在select ... into。

期间被忽略      

•与删除,更新或视图一起使用时,无法指定排序。如果聚集索引表中存在隐含的顺序,则该顺序适用;否则,结果是不可预测的,因为它们可以是任何顺序。

     

•与游标一起使用时,top n限制结果集的总大小。指定set cursor rowcount会限制单次提取的结果。

     

•当视图定义包含select top n和where子句使用它的查询时,结果可能不一致。