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.
5247 5248 5249 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5247 def initialize(**args) update!(**args) end |
Instance Attribute Details
#connection_properties ⇒ Array<Google::Apis::BigqueryV2::ConnectionProperty>
Connection properties.
Corresponds to the JSON property connectionProperties
5110 5111 5112 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5110 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
5117 5118 5119 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5117 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
5125 5126 5127 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5125 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
5133 5134 5135 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5133 def dry_run @dry_run end |
#kind ⇒ String
The resource type of the request.
Corresponds to the JSON property kind
5139 5140 5141 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5139 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
5148 5149 5150 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5148 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
5154 5155 5156 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5154 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
5163 5164 5165 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5163 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
5170 5171 5172 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5170 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
5176 5177 5178 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5176 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
5181 5182 5183 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5181 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
5189 5190 5191 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5189 def query @query end |
#query_parameters ⇒ Array<Google::Apis::BigqueryV2::QueryParameter>
Query parameters for Standard SQL queries.
Corresponds to the JSON property queryParameters
5194 5195 5196 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5194 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
5217 5218 5219 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5217 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
5227 5228 5229 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5227 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
5236 5237 5238 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5236 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
5244 5245 5246 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5244 def use_query_cache @use_query_cache end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
5252 5253 5254 5255 5256 5257 5258 5259 5260 5261 5262 5263 5264 5265 5266 5267 5268 5269 5270 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 5252 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 |