Class: Google::Apis::BigqueryV2::QueryRequest
- Inherits:
-
Object
- Object
- Google::Apis::BigqueryV2::QueryRequest
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/bigquery_v2/classes.rb,
lib/google/apis/bigquery_v2/representations.rb,
lib/google/apis/bigquery_v2/representations.rb
Instance Attribute Summary collapse
-
#connection_properties ⇒ Array<Google::Apis::BigqueryV2::ConnectionProperty>
Connection properties.
-
#create_session ⇒ Boolean
(also: #create_session?)
If true, creates a new session, where session id will be a server generated random id.
-
#default_dataset ⇒ Google::Apis::BigqueryV2::DatasetReference
[Optional] Specifies the default datasetId and projectId to assume for any unqualified table names in the query.
-
#dry_run ⇒ Boolean
(also: #dry_run?)
[Optional] If set to true, BigQuery doesn't run the job.
-
#kind ⇒ String
The resource type of the request.
-
#labels ⇒ Hash<String,String>
The labels associated with this job.
-
#location ⇒ String
The geographic location where the job should run.
-
#max_results ⇒ Fixnum
[Optional] The maximum number of rows of data to return per page of results.
-
#maximum_bytes_billed ⇒ Fixnum
[Optional] Limits the bytes billed for this job.
-
#parameter_mode ⇒ String
Standard SQL only.
-
#preserve_nulls ⇒ Boolean
(also: #preserve_nulls?)
[Deprecated] This property is deprecated.
-
#query ⇒ String
[Required] A query string, following the BigQuery query syntax, of the query to execute.
-
#query_parameters ⇒ Array<Google::Apis::BigqueryV2::QueryParameter>
Query parameters for Standard SQL queries.
-
#request_id ⇒ String
A unique user provided identifier to ensure idempotent behavior for queries.
-
#timeout_ms ⇒ Fixnum
[Optional] How long to wait for the query to complete, in milliseconds, before the request times out and returns.
-
#use_legacy_sql ⇒ Boolean
(also: #use_legacy_sql?)
Specifies whether to use BigQuery's legacy SQL dialect for this query.
-
#use_query_cache ⇒ Boolean
(also: #use_query_cache?)
[Optional] Whether to look for the result in the query cache.
Instance Method Summary collapse
-
#initialize(**args) ⇒ QueryRequest
constructor
A new instance of QueryRequest.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ QueryRequest
Returns a new instance of QueryRequest.
6096 6097 6098 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6096 def initialize(**args) update!(**args) end |
Instance Attribute Details
#connection_properties ⇒ Array<Google::Apis::BigqueryV2::ConnectionProperty>
Connection properties.
Corresponds to the JSON property connectionProperties
5959 5960 5961 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5959 def connection_properties @connection_properties end |
#create_session ⇒ Boolean Also known as: create_session?
If true, creates a new session, where session id will be a server generated
random id. If false, runs query with an existing session_id passed in
ConnectionProperty, otherwise runs query in non-session mode.
Corresponds to the JSON property createSession
5966 5967 5968 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5966 def create_session @create_session end |
#default_dataset ⇒ Google::Apis::BigqueryV2::DatasetReference
[Optional] Specifies the default datasetId and projectId to assume for any
unqualified table names in the query. If not set, all table names in the query
string must be qualified in the format 'datasetId.tableId'.
Corresponds to the JSON property defaultDataset
5974 5975 5976 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5974 def default_dataset @default_dataset end |
#dry_run ⇒ Boolean Also known as: dry_run?
[Optional] If set to true, BigQuery doesn't run the job. Instead, if the query
is valid, BigQuery returns statistics about the job such as how many bytes
would be processed. If the query is invalid, an error returns. The default
value is false.
Corresponds to the JSON property dryRun
5982 5983 5984 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5982 def dry_run @dry_run end |
#kind ⇒ String
The resource type of the request.
Corresponds to the JSON property kind
5988 5989 5990 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5988 def kind @kind end |
#labels ⇒ Hash<String,String>
The labels associated with this job. You can use these to organize and group
your jobs. Label keys and values can be no longer than 63 characters, can only
contain lowercase letters, numeric characters, underscores and dashes.
International characters are allowed. Label values are optional. Label keys
must start with a letter and each label in the list must have a different key.
Corresponds to the JSON property labels
5997 5998 5999 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5997 def labels @labels end |
#location ⇒ String
The geographic location where the job should run. See details at https://cloud.
google.com/bigquery/docs/locations#specifying_your_location.
Corresponds to the JSON property location
6003 6004 6005 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6003 def location @location end |
#max_results ⇒ Fixnum
[Optional] The maximum number of rows of data to return per page of results.
Setting this flag to a small value such as 1000 and then paging through
results might improve reliability when the query result set is large. In
addition to this limit, responses are also limited to 10 MB. By default, there
is no maximum row count, and only the byte limit applies.
Corresponds to the JSON property maxResults
6012 6013 6014 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6012 def max_results @max_results end |
#maximum_bytes_billed ⇒ Fixnum
[Optional] Limits the bytes billed for this job. Queries that will have bytes
billed beyond this limit will fail (without incurring a charge). If
unspecified, this will be set to your project default.
Corresponds to the JSON property maximumBytesBilled
6019 6020 6021 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6019 def maximum_bytes_billed @maximum_bytes_billed end |
#parameter_mode ⇒ String
Standard SQL only. Set to POSITIONAL to use positional (?) query parameters or
to NAMED to use named (@myparam) query parameters in this query.
Corresponds to the JSON property parameterMode
6025 6026 6027 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6025 def parameter_mode @parameter_mode end |
#preserve_nulls ⇒ Boolean Also known as: preserve_nulls?
[Deprecated] This property is deprecated.
Corresponds to the JSON property preserveNulls
6030 6031 6032 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6030 def preserve_nulls @preserve_nulls end |
#query ⇒ String
[Required] A query string, following the BigQuery query syntax, of the query
to execute. Example: "SELECT count(f1) FROM [myProjectId:myDatasetId.myTableId]
".
Corresponds to the JSON property query
6038 6039 6040 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6038 def query @query end |
#query_parameters ⇒ Array<Google::Apis::BigqueryV2::QueryParameter>
Query parameters for Standard SQL queries.
Corresponds to the JSON property queryParameters
6043 6044 6045 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6043 def query_parameters @query_parameters end |
#request_id ⇒ String
A unique user provided identifier to ensure idempotent behavior for queries. Note that this is different from the job_id. It has the following properties:
- It is case-sensitive, limited to up to 36 ASCII characters. A UUID is
recommended. 2. Read only queries can ignore this token since they are
nullipotent by definition. 3. For the purposes of idempotency ensured by the
request_id, a request is considered duplicate of another only if they have the
same request_id and are actually duplicates. When determining whether a
request is a duplicate of the previous request, all parameters in the request
that may affect the behavior are considered. For example, query,
connection_properties, query_parameters, use_legacy_sql are parameters that
affect the result and are considered when determining whether a request is a
duplicate, but properties like timeout_ms don't affect the result and are thus
not considered. Dry run query requests are never considered duplicate of
another request. 4. When a duplicate mutating query request is detected, it
returns: a. the results of the mutation if it completes successfully within
the timeout. b. the running operation if it is still in progress at the end of
the timeout. 5. Its lifetime is limited to 15 minutes. In other words, if two
requests are sent with the same request_id, but more than 15 minutes apart,
idempotency is not guaranteed.
Corresponds to the JSON property
requestId
6066 6067 6068 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6066 def request_id @request_id end |
#timeout_ms ⇒ Fixnum
[Optional] How long to wait for the query to complete, in milliseconds, before
the request times out and returns. Note that this is only a timeout for the
request, not the query. If the query takes longer to run than the timeout
value, the call returns without any results and with the 'jobComplete' flag
set to false. You can call GetQueryResults() to wait for the query to complete
and read the results. The default value is 10000 milliseconds (10 seconds).
Corresponds to the JSON property timeoutMs
6076 6077 6078 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6076 def timeout_ms @timeout_ms end |
#use_legacy_sql ⇒ Boolean Also known as: use_legacy_sql?
Specifies whether to use BigQuery's legacy SQL dialect for this query. The
default value is true. If set to false, the query will use BigQuery's standard
SQL: https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is set
to false, the value of flattenResults is ignored; query will be run as if
flattenResults is false.
Corresponds to the JSON property useLegacySql
6085 6086 6087 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6085 def use_legacy_sql @use_legacy_sql end |
#use_query_cache ⇒ Boolean Also known as: use_query_cache?
[Optional] Whether to look for the result in the query cache. The query cache
is a best-effort cache that will be flushed whenever tables in the query are
modified. The default value is true.
Corresponds to the JSON property useQueryCache
6093 6094 6095 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6093 def use_query_cache @use_query_cache end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
6101 6102 6103 6104 6105 6106 6107 6108 6109 6110 6111 6112 6113 6114 6115 6116 6117 6118 6119 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6101 def update!(**args) @connection_properties = args[:connection_properties] if args.key?(:connection_properties) @create_session = args[:create_session] if args.key?(:create_session) @default_dataset = args[:default_dataset] if args.key?(:default_dataset) @dry_run = args[:dry_run] if args.key?(:dry_run) @kind = args[:kind] if args.key?(:kind) @labels = args[:labels] if args.key?(:labels) @location = args[:location] if args.key?(:location) @max_results = args[:max_results] if args.key?(:max_results) @maximum_bytes_billed = args[:maximum_bytes_billed] if args.key?(:maximum_bytes_billed) @parameter_mode = args[:parameter_mode] if args.key?(:parameter_mode) @preserve_nulls = args[:preserve_nulls] if args.key?(:preserve_nulls) @query = args[:query] if args.key?(:query) @query_parameters = args[:query_parameters] if args.key?(:query_parameters) @request_id = args[:request_id] if args.key?(:request_id) @timeout_ms = args[:timeout_ms] if args.key?(:timeout_ms) @use_legacy_sql = args[:use_legacy_sql] if args.key?(:use_legacy_sql) @use_query_cache = args[:use_query_cache] if args.key?(:use_query_cache) end |