Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - 数据库管理 » 配置数据库 » 数据库选项 » 数据库选项简介 » 按字母顺序排列的选项列表

 

optimization_goal 选项 [数据库]

确定优化查询处理的意图:是迅速返回第一行,还是为最大程度地降低返回整个结果集的开销。

允许值

First-row、All-rows

缺省值

All-rows

注释

optimization_goal 选项控制 SQL Anywhere 针对响应时间还是总资源消耗而优化 SQL 数据操作语言 (DML) 语句。

如果此选项设置为 All-rows(缺省值),则 SQL Anywhere 将优化查询以选择预计总检索时间最少的访问计划。将 optimization_goal 设置为 All-rows 可能适用于要处理整个结果集的应用程序,例如 PowerBuilder DataWindow 应用程序。All-rows 设置也适用于不敏感(ODBC 静态)游标,因为当游标打开时整个结果都得以实现。它可能还适用于滚动(ODBC 键集决定)游标,因为这种游标的意图是允许在结果集中滚动。

如果将选项设置为 First-row,SQL Anywhere 会选择用于减少查询结果的首行提取时间访问计划,而且很可能以总检索时间为代价。特别是,SQL Anywhere 优化程序通常会尽量避免需要实现结果以减少返回首行的时间的访问计划。使用此设置,优化程序会倾向于利用索引来满足查询的 ORDER BY 子句的访问计划,而不是需要显式排序操作的计划。

您可以在查询的 FROM 子句中使用 FASTFIRSTROW 表提示,将特定查询的优化目标设置为 First-row,而不必更改 optimization_goal 设置。

有关使用 FASTFIRSTROW 表提示的详细信息,请参见FROM 子句

通过在 INSERT、UPDATE、DELETE、SELECT、UNION、EXCEPT 和 INTERSECT 语句中包括 OPTION 子句,可以替代此选项在各个语句中的任何临时或公共设置。请参见: