pub struct SqlParserOptions {
pub parse_float_as_decimal: bool,
pub enable_ident_normalization: bool,
pub enable_options_value_normalization: bool,
pub dialect: Dialect,
pub support_varchar_with_length: bool,
pub map_string_types_to_utf8view: bool,
pub collect_spans: bool,
pub recursion_limit: usize,
pub default_null_ordering: String,
pub enable_subquery_sort_elimination: bool,
}Expand description
Options related to SQL parser
See also: SessionConfig
Fields§
§parse_float_as_decimal: boolWhen set to true, SQL parser will parse float as decimal type
enable_ident_normalization: boolWhen set to true, SQL parser will normalize ident (convert ident to lowercase when not quoted)
enable_options_value_normalization: boolWhen set to true, SQL parser will normalize options value (convert value to lowercase). Note that this option is ignored and will be removed in the future. All case-insensitive values are normalized automatically.
dialect: DialectConfigure the SQL dialect used by DataFusion’s parser; supported values include: Generic, MySQL, PostgreSQL, Hive, SQLite, Snowflake, Redshift, MsSQL, ClickHouse, BigQuery, Ansi, DuckDB and Databricks.
support_varchar_with_length: boolIf true, permit lengths for VARCHAR such as VARCHAR(20), but
ignore the length. If false, error if a VARCHAR with a length is
specified. The Arrow type system does not have a notion of maximum
string length and thus DataFusion can not enforce such limits.
map_string_types_to_utf8view: boolIf true, string types (VARCHAR, CHAR, Text, and String) are mapped to Utf8View during SQL planning.
If false, they are mapped to Utf8.
Default is true.
collect_spans: boolWhen set to true, the source locations relative to the original SQL
query (i.e. Span) will be collected
and recorded in the logical plan nodes.
recursion_limit: usizeSpecifies the recursion depth limit when parsing complex SQL Queries
default_null_ordering: StringSpecifies the default null ordering for query results. There are 4 options:
nulls_max: Nulls appear last in ascending order.nulls_min: Nulls appear first in ascending order.nulls_first: Nulls always be first in any order.nulls_last: Nulls always be last in any order.
By default, nulls_max is used to follow Postgres’s behavior.
postgres rule: https://www.postgresql.org/docs/current/queries-order.html
enable_subquery_sort_elimination: boolWhen set to true, DataFusion may remove ORDER BY clauses from
subqueries or CTEs during SQL planning when their ordering cannot
affect the result, such as when no LIMIT or other
order-sensitive operator depends on them.
Disable this option to preserve explicit subquery ordering in the planned query.
Trait Implementations§
Source§impl Clone for SqlParserOptions
impl Clone for SqlParserOptions
Source§fn clone(&self) -> SqlParserOptions
fn clone(&self) -> SqlParserOptions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl ConfigField for SqlParserOptions
impl ConfigField for SqlParserOptions
Source§impl Debug for SqlParserOptions
impl Debug for SqlParserOptions
Source§impl Default for SqlParserOptions
impl Default for SqlParserOptions
Source§impl PartialEq for SqlParserOptions
impl PartialEq for SqlParserOptions
Source§fn eq(&self, other: &SqlParserOptions) -> bool
fn eq(&self, other: &SqlParserOptions) -> bool
self and other values to be equal, and is used by ==.