Reference documentation and code samples for the Cloud Spanner V1 Client class QueryOptions.
Query optimizer configuration.
Generated from protobuf message google.spanner.v1.ExecuteSqlRequest.QueryOptions
Namespace
Google \ Cloud \ Spanner \ V1 \ ExecuteSqlRequest
Methods
__construct
Constructor.
Parameters
Name
Description
data
array
Optional. Data for populating the Message object.
↳ optimizer_version
string
An option to control the selection of optimizer version. This parameter allows individual queries to pick different query optimizer versions. Specifying latest as a value instructs Cloud Spanner to use the latest supported query optimizer version. If not specified, Cloud Spanner uses the optimizer version set at the database level options. Any other positive integer (from the list of supported optimizer versions) overrides the default optimizer version for query execution. The list of supported optimizer versions can be queried from SPANNER_SYS.SUPPORTED_OPTIMIZER_VERSIONS. Executing a SQL statement with an invalid optimizer version fails with an INVALID_ARGUMENT error. See https://cloud.google.com/spanner/docs/query-optimizer/manage-query-optimizer for more information on managing the query optimizer. The optimizer_version statement hint has precedence over this setting.
↳ optimizer_statistics_package
string
An option to control the selection of optimizer statistics package. This parameter allows individual queries to use a different query optimizer statistics package. Specifying latest as a value instructs Cloud Spanner to use the latest generated statistics package. If not specified, Cloud Spanner uses the statistics package set at the database level options, or the latest package if the database option is not set. The statistics package requested by the query has to be exempt from garbage collection. This can be achieved with the following DDL statement: ALTER STATISTICS <package_name> SET OPTIONS (allow_gc=false) The list of available statistics packages can be queried from INFORMATION_SCHEMA.SPANNER_STATISTICS. Executing a SQL statement with an invalid optimizer statistics package or with a statistics package that allows garbage collection fails with an INVALID_ARGUMENT error.
getOptimizerVersion
An option to control the selection of optimizer version.
This parameter allows individual queries to pick different query
optimizer versions.
Specifying latest as a value instructs Cloud Spanner to use the
latest supported query optimizer version. If not specified, Cloud Spanner
uses the optimizer version set at the database level options. Any other
positive integer (from the list of supported optimizer versions)
overrides the default optimizer version for query execution.
The list of supported optimizer versions can be queried from
SPANNER_SYS.SUPPORTED_OPTIMIZER_VERSIONS.
Executing a SQL statement with an invalid optimizer version fails with
an INVALID_ARGUMENT error.
See
https://cloud.google.com/spanner/docs/query-optimizer/manage-query-optimizer
for more information on managing the query optimizer.
The optimizer_version statement hint has precedence over this setting.
Returns
Type
Description
string
setOptimizerVersion
An option to control the selection of optimizer version.
This parameter allows individual queries to pick different query
optimizer versions.
Specifying latest as a value instructs Cloud Spanner to use the
latest supported query optimizer version. If not specified, Cloud Spanner
uses the optimizer version set at the database level options. Any other
positive integer (from the list of supported optimizer versions)
overrides the default optimizer version for query execution.
The list of supported optimizer versions can be queried from
SPANNER_SYS.SUPPORTED_OPTIMIZER_VERSIONS.
Executing a SQL statement with an invalid optimizer version fails with
an INVALID_ARGUMENT error.
See
https://cloud.google.com/spanner/docs/query-optimizer/manage-query-optimizer
for more information on managing the query optimizer.
The optimizer_version statement hint has precedence over this setting.
Parameter
Name
Description
var
string
Returns
Type
Description
$this
getOptimizerStatisticsPackage
An option to control the selection of optimizer statistics package.
This parameter allows individual queries to use a different query
optimizer statistics package.
Specifying latest as a value instructs Cloud Spanner to use the latest
generated statistics package. If not specified, Cloud Spanner uses
the statistics package set at the database level options, or the latest
package if the database option is not set.
The statistics package requested by the query has to be exempt from
garbage collection. This can be achieved with the following DDL
statement:
ALTER STATISTICS <package_name> SET OPTIONS (allow_gc=false)
The list of available statistics packages can be queried from
INFORMATION_SCHEMA.SPANNER_STATISTICS.
Executing a SQL statement with an invalid optimizer statistics package
or with a statistics package that allows garbage collection fails with
an INVALID_ARGUMENT error.
Returns
Type
Description
string
setOptimizerStatisticsPackage
An option to control the selection of optimizer statistics package.
This parameter allows individual queries to use a different query
optimizer statistics package.
Specifying latest as a value instructs Cloud Spanner to use the latest
generated statistics package. If not specified, Cloud Spanner uses
the statistics package set at the database level options, or the latest
package if the database option is not set.
The statistics package requested by the query has to be exempt from
garbage collection. This can be achieved with the following DDL
statement:
ALTER STATISTICS <package_name> SET OPTIONS (allow_gc=false)
The list of available statistics packages can be queried from
INFORMATION_SCHEMA.SPANNER_STATISTICS.
Executing a SQL statement with an invalid optimizer statistics package
or with a statistics package that allows garbage collection fails with
an INVALID_ARGUMENT error.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[],[],null,["# Cloud Spanner V1 Client - Class QueryOptions (1.104.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.104.0 (latest)](/php/docs/reference/cloud-spanner/latest/V1.ExecuteSqlRequest.QueryOptions)\n- [1.103.0](/php/docs/reference/cloud-spanner/1.103.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.102.0](/php/docs/reference/cloud-spanner/1.102.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.101.0](/php/docs/reference/cloud-spanner/1.101.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.100.0](/php/docs/reference/cloud-spanner/1.100.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.98.0](/php/docs/reference/cloud-spanner/1.98.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.97.0](/php/docs/reference/cloud-spanner/1.97.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.96.0](/php/docs/reference/cloud-spanner/1.96.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.95.0](/php/docs/reference/cloud-spanner/1.95.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.94.0](/php/docs/reference/cloud-spanner/1.94.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.93.1](/php/docs/reference/cloud-spanner/1.93.1/V1.ExecuteSqlRequest.QueryOptions)\n- [1.92.1](/php/docs/reference/cloud-spanner/1.92.1/V1.ExecuteSqlRequest.QueryOptions)\n- [1.91.0](/php/docs/reference/cloud-spanner/1.91.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.90.0](/php/docs/reference/cloud-spanner/1.90.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.89.0](/php/docs/reference/cloud-spanner/1.89.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.88.0](/php/docs/reference/cloud-spanner/1.88.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.87.0](/php/docs/reference/cloud-spanner/1.87.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.86.0](/php/docs/reference/cloud-spanner/1.86.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.85.0](/php/docs/reference/cloud-spanner/1.85.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.84.0](/php/docs/reference/cloud-spanner/1.84.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.83.0](/php/docs/reference/cloud-spanner/1.83.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.82.0](/php/docs/reference/cloud-spanner/1.82.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.81.0](/php/docs/reference/cloud-spanner/1.81.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.80.0](/php/docs/reference/cloud-spanner/1.80.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.79.0](/php/docs/reference/cloud-spanner/1.79.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.78.0](/php/docs/reference/cloud-spanner/1.78.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.77.0](/php/docs/reference/cloud-spanner/1.77.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.76.1](/php/docs/reference/cloud-spanner/1.76.1/V1.ExecuteSqlRequest.QueryOptions)\n- [1.68.0](/php/docs/reference/cloud-spanner/1.68.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.67.0](/php/docs/reference/cloud-spanner/1.67.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.66.0](/php/docs/reference/cloud-spanner/1.66.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.65.0](/php/docs/reference/cloud-spanner/1.65.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.64.0](/php/docs/reference/cloud-spanner/1.64.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.63.2](/php/docs/reference/cloud-spanner/1.63.2/V1.ExecuteSqlRequest.QueryOptions)\n- [1.62.1](/php/docs/reference/cloud-spanner/1.62.1/V1.ExecuteSqlRequest.QueryOptions)\n- [1.61.0](/php/docs/reference/cloud-spanner/1.61.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.60.0](/php/docs/reference/cloud-spanner/1.60.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.59.0](/php/docs/reference/cloud-spanner/1.59.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.58.4](/php/docs/reference/cloud-spanner/1.58.4/V1.ExecuteSqlRequest.QueryOptions)\n- [1.57.0](/php/docs/reference/cloud-spanner/1.57.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.56.0](/php/docs/reference/cloud-spanner/1.56.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.55.0](/php/docs/reference/cloud-spanner/1.55.0/V1.ExecuteSqlRequest.QueryOptions)\n- [1.54.2](/php/docs/reference/cloud-spanner/1.54.2/V1.ExecuteSqlRequest.QueryOptions) \nReference documentation and code samples for the Cloud Spanner V1 Client class QueryOptions.\n\nQuery optimizer configuration.\n\nGenerated from protobuf message `google.spanner.v1.ExecuteSqlRequest.QueryOptions`\n\nNamespace\n---------\n\nGoogle \\\\ Cloud \\\\ Spanner \\\\ V1 \\\\ ExecuteSqlRequest\n\nMethods\n-------\n\n### __construct\n\nConstructor.\n\n### getOptimizerVersion\n\nAn option to control the selection of optimizer version.\n\nThis parameter allows individual queries to pick different query\noptimizer versions.\nSpecifying `latest` as a value instructs Cloud Spanner to use the\nlatest supported query optimizer version. If not specified, Cloud Spanner\nuses the optimizer version set at the database level options. Any other\npositive integer (from the list of supported optimizer versions)\noverrides the default optimizer version for query execution.\nThe list of supported optimizer versions can be queried from\nSPANNER_SYS.SUPPORTED_OPTIMIZER_VERSIONS.\nExecuting a SQL statement with an invalid optimizer version fails with\nan `INVALID_ARGUMENT` error.\nSee\n\u003chttps://cloud.google.com/spanner/docs/query-optimizer/manage-query-optimizer\u003e\nfor more information on managing the query optimizer.\nThe `optimizer_version` statement hint has precedence over this setting.\n\n### setOptimizerVersion\n\nAn option to control the selection of optimizer version.\n\nThis parameter allows individual queries to pick different query\noptimizer versions.\nSpecifying `latest` as a value instructs Cloud Spanner to use the\nlatest supported query optimizer version. If not specified, Cloud Spanner\nuses the optimizer version set at the database level options. Any other\npositive integer (from the list of supported optimizer versions)\noverrides the default optimizer version for query execution.\nThe list of supported optimizer versions can be queried from\nSPANNER_SYS.SUPPORTED_OPTIMIZER_VERSIONS.\nExecuting a SQL statement with an invalid optimizer version fails with\nan `INVALID_ARGUMENT` error.\nSee\n\u003chttps://cloud.google.com/spanner/docs/query-optimizer/manage-query-optimizer\u003e\nfor more information on managing the query optimizer.\nThe `optimizer_version` statement hint has precedence over this setting.\n\n### getOptimizerStatisticsPackage\n\nAn option to control the selection of optimizer statistics package.\n\nThis parameter allows individual queries to use a different query\noptimizer statistics package.\nSpecifying `latest` as a value instructs Cloud Spanner to use the latest\ngenerated statistics package. If not specified, Cloud Spanner uses\nthe statistics package set at the database level options, or the latest\npackage if the database option is not set.\nThe statistics package requested by the query has to be exempt from\ngarbage collection. This can be achieved with the following DDL\nstatement: \n\n ALTER STATISTICS \u003cpackage_name\u003e SET OPTIONS (allow_gc=false)\n\nThe list of available statistics packages can be queried from\n`INFORMATION_SCHEMA.SPANNER_STATISTICS`.\nExecuting a SQL statement with an invalid optimizer statistics package\nor with a statistics package that allows garbage collection fails with\nan `INVALID_ARGUMENT` error.\n\n### setOptimizerStatisticsPackage\n\nAn option to control the selection of optimizer statistics package.\n\nThis parameter allows individual queries to use a different query\noptimizer statistics package.\nSpecifying `latest` as a value instructs Cloud Spanner to use the latest\ngenerated statistics package. If not specified, Cloud Spanner uses\nthe statistics package set at the database level options, or the latest\npackage if the database option is not set.\nThe statistics package requested by the query has to be exempt from\ngarbage collection. This can be achieved with the following DDL\nstatement: \n\n ALTER STATISTICS \u003cpackage_name\u003e SET OPTIONS (allow_gc=false)\n\nThe list of available statistics packages can be queried from\n`INFORMATION_SCHEMA.SPANNER_STATISTICS`.\nExecuting a SQL statement with an invalid optimizer statistics package\nor with a statistics package that allows garbage collection fails with\nan `INVALID_ARGUMENT` error."]]