Skip to main content
Preview Spark query syntax in SparkSQL and Databricks compatibility modes. Both modes accept everything listed here unless a row names one mode.

Supported clauses

Set operations

Literals and identifiers

Limitations

  • Identifiers are returned in lower case. Spark keeps the case an alias is written in, so a column selected as Foo comes back as Foo there and foo here. A client that looks up result columns by name needs to be case-insensitive.
  • String comparison is case-sensitive, as in Spark’s default collation. Collations, such as COLLATE UTF8_LCASE, are not supported.
  • A three-part name reads its first part as a Firebolt database: db.schema.t works, and spark_catalog.default.t fails because no database is named spark_catalog. Two-part schema.table names work.
  • Query parameters, :name and ?, are not supported.
  • An unaliased expression column is named ?column? where Spark names it after the expression’s text. Function calls and literals are named as in Spark. Alias any column a client reads by name.