dataengref migrate

Home / SQL Server

SQL Server FORMAT in Snowflake, Databricks and BigQuery

FORMAT uses .NET format strings and an optional culture. None of the targets run .NET patterns: dates become TO_CHAR in Snowflake, date_format in Databricks and FORMAT_DATE in BigQuery, each with its own pattern letters.

SQL Server function: FORMAT(value, format [, culture]) · SQL Server docs

Format strings for each style code: CONVERT date styles in Snowflake, Databricks and BigQuery

Equivalents

TargetSupportSyntaxNotesSource
SnowflakeRewriteTO_CHAR(expr, 'YYYY-MM-DD')'yyyy-MM-dd' becomes 'YYYY-MM-DD'; 'HH:mm' becomes 'HH24:MI'.Snowflake docs
DatabricksRewritedate_format(expr, 'yyyy-MM-dd')Java-style patterns, close to .NET for common date formats. Use format_number for numbers.Databricks docs
BigQueryRewriteFORMAT_DATE('%Y-%m-%d', date)Use FORMAT_DATETIME or FORMAT_TIMESTAMP for other types, and FORMAT for numbers.BigQuery docs

Behavior differences to check

Examples

Order date as text

SQL Server
SELECT FORMAT(order_date, 'yyyy-MM-dd') AS order_day FROM orders;
Snowflake
SELECT TO_CHAR(order_date, 'YYYY-MM-DD') AS order_day FROM orders;
Databricks
SELECT date_format(order_date, 'yyyy-MM-dd') AS order_day FROM orders;
BigQuery
SELECT FORMAT_DATE('%Y-%m-%d', order_date) AS order_day FROM orders;

Other SQL Server functions

Last checked: · Paste a whole query into the SQL checker to find every function that needs a change.