class Google::Apis::BigqueryV2::JobConfigurationQuery
Attributes
- Optional
-
If true and query uses legacy SQL dialect, allows the query to
produce arbitrarily large result tables at a slight cost in performance. Requires destinationTable to be set. For standard SQL queries, this flag is ignored and large results are always allowed. However, you must still set destinationTable when result size exceeds the allowed maximum response size. Corresponds to the JSON property `allowLargeResults` @return [Boolean]
- Optional
-
If true and query uses legacy SQL dialect, allows the query to
produce arbitrarily large result tables at a slight cost in performance. Requires destinationTable to be set. For standard SQL queries, this flag is ignored and large results are always allowed. However, you must still set destinationTable when result size exceeds the allowed maximum response size. Corresponds to the JSON property `allowLargeResults` @return [Boolean]
- Beta
-
Clustering
specification for the destination table. Must be specified
with time-based partitioning, data in the table will be first partitioned and subsequently clustered. Corresponds to the JSON property `clustering` @return [Google::Apis::BigqueryV2::Clustering]
Connection properties. Corresponds to the JSON property `connectionProperties` @return [Array<Google::Apis::BigqueryV2::ConnectionProperty>]
- Optional
-
Specifies whether the job is allowed to create new tables. The
following values are supported: CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table. CREATE_NEVER: The table must already exist. If it does not, a 'notFound' error is returned in the job result. The default value is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one atomic update upon job completion. Corresponds to the JSON property `createDisposition` @return [String]
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` @return [Boolean]
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` @return [Boolean]
- Optional
-
Specifies the default dataset to use for unqualified table names in
the query. Note that this does not alter behavior of unqualified dataset names. Corresponds to the JSON property `defaultDataset` @return [Google::Apis::BigqueryV2::DatasetReference]
Custom encryption configuration (e.g., Cloud KMS keys). Corresponds to the JSON property `destinationEncryptionConfiguration` @return [Google::Apis::BigqueryV2::EncryptionConfiguration]
- Optional
-
Describes the table where the query results should be stored. If
not present, a new table will be created to store the results. This property must be set for large results that exceed the maximum response size. Corresponds to the JSON property `destinationTable` @return [Google::Apis::BigqueryV2::TableReference]
- Optional
-
If true and query uses legacy SQL dialect, flattens all nested and
repeated fields in the query results. allowLargeResults must be true if this is set to false. For standard SQL queries, this flag is ignored and results are never flattened. Corresponds to the JSON property `flattenResults` @return [Boolean]
- Optional
-
If true and query uses legacy SQL dialect, flattens all nested and
repeated fields in the query results. allowLargeResults must be true if this is set to false. For standard SQL queries, this flag is ignored and results are never flattened. Corresponds to the JSON property `flattenResults` @return [Boolean]
- Optional
-
Limits the billing tier for this job. Queries that have resource
usage beyond this tier will fail (without incurring a charge). If unspecified, this will be set to your project default. Corresponds to the JSON property `maximumBillingTier` @return [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` @return [Fixnum]
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` @return [String]
- Deprecated
-
This property is deprecated.
Corresponds to the JSON property `preserveNulls` @return [Boolean]
- Deprecated
-
This property is deprecated.
Corresponds to the JSON property `preserveNulls` @return [Boolean]
- Optional
-
Specifies a priority for the query. Possible values include
INTERACTIVE and BATCH. The default value is INTERACTIVE. Corresponds to the JSON property `priority` @return [String]
- Required
-
SQL query text to execute. The useLegacySql field can be used to
indicate whether the query uses legacy SQL or standard SQL. Corresponds to the JSON property `query` @return [String]
Query parameters for standard SQL queries. Corresponds to the JSON property `queryParameters` @return [Array<Google::Apis::BigqueryV2::QueryParameter>]
- TrustedTester
-
Range partitioning specification for this table. Only one of
timePartitioning and rangePartitioning should be specified. Corresponds to the JSON property `rangePartitioning` @return [Google::Apis::BigqueryV2::RangePartitioning]
Allows the schema of the destination table to be updated as a side effect of the query job. Schema update options are supported in two cases: when writeDisposition is WRITE_APPEND; when writeDisposition is WRITE_TRUNCATE and the destination table is a partition of a table, specified by partition decorators. For normal tables, WRITE_TRUNCATE will always overwrite the schema. One or more of the following values are specified: ALLOW_FIELD_ADDITION: allow adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field in the original schema to nullable. Corresponds to the JSON property `schemaUpdateOptions` @return [Array<String>]
- Optional
-
If querying an external data source outside of BigQuery, describes
the data format, location and other properties of the data source. By defining these properties, the data source can then be queried as if it were a standard BigQuery table. Corresponds to the JSON property `tableDefinitions` @return [Hash<String,Google::Apis::BigqueryV2::ExternalDataConfiguration>]
Time-based partitioning specification for the destination table. Only one of timePartitioning and rangePartitioning should be specified. Corresponds to the JSON property `timePartitioning` @return [Google::Apis::BigqueryV2::TimePartitioning]
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: 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` @return [Boolean]
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: 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` @return [Boolean]
- 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. Moreover, the query cache is only available when a query does not have a destination table specified. The default value is true. Corresponds to the JSON property `useQueryCache` @return [Boolean]
- 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. Moreover, the query cache is only available when a query does not have a destination table specified. The default value is true. Corresponds to the JSON property `useQueryCache` @return [Boolean]
Describes user-defined function resources used in the query. Corresponds to the JSON property `userDefinedFunctionResources` @return [Array<Google::Apis::BigqueryV2::UserDefinedFunctionResource>]
- Optional
-
Specifies the action that occurs if the destination table already
exists. The following values are supported: WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the table data and uses the schema from the query result. WRITE_APPEND: If the table already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the table already exists and contains data, a 'duplicate' error is returned in the job result. The default value is WRITE_EMPTY. Each action is atomic and only occurs if BigQuery is able to complete the job successfully. Creation, truncation and append actions occur as one atomic update upon job completion. Corresponds to the JSON property `writeDisposition` @return [String]
Public Class Methods
# File lib/google/apis/bigquery_v2/classes.rb, line 3604 def initialize(**args) update!(**args) end
Public Instance Methods
Update properties of this object
# File lib/google/apis/bigquery_v2/classes.rb, line 3609 def update!(**args) @allow_large_results = args[:allow_large_results] if args.key?(:allow_large_results) @clustering = args[:clustering] if args.key?(:clustering) @connection_properties = args[:connection_properties] if args.key?(:connection_properties) @create_disposition = args[:create_disposition] if args.key?(:create_disposition) @create_session = args[:create_session] if args.key?(:create_session) @default_dataset = args[:default_dataset] if args.key?(:default_dataset) @destination_encryption_configuration = args[:destination_encryption_configuration] if args.key?(:destination_encryption_configuration) @destination_table = args[:destination_table] if args.key?(:destination_table) @flatten_results = args[:flatten_results] if args.key?(:flatten_results) @maximum_billing_tier = args[:maximum_billing_tier] if args.key?(:maximum_billing_tier) @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) @priority = args[:priority] if args.key?(:priority) @query = args[:query] if args.key?(:query) @query_parameters = args[:query_parameters] if args.key?(:query_parameters) @range_partitioning = args[:range_partitioning] if args.key?(:range_partitioning) @schema_update_options = args[:schema_update_options] if args.key?(:schema_update_options) @table_definitions = args[:table_definitions] if args.key?(:table_definitions) @time_partitioning = args[:time_partitioning] if args.key?(:time_partitioning) @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) @user_defined_function_resources = args[:user_defined_function_resources] if args.key?(:user_defined_function_resources) @write_disposition = args[:write_disposition] if args.key?(:write_disposition) end