SQLParity

SQL converter

Rewrite quoting, escaping, row limits and function names between 16 dialects, with a list of what it refused to guess at.

1

Snowflake query

2

ClickHouse query

What it changed

  • current timestampnow()1 place
  • VARCHARString1 place

What you still need to do

1 thing this tool will not guess at

  • Array subscript

    Snowflake counts array positions from 0, ClickHouse from 1: the same arr[1] is the first element in one and the second in the other, with no error. Adjust every index by one.

Anything left in this list was recognised and left as it was on purpose. A function renamed to one that takes its arguments in a different order produces SQL that runs and returns the wrong rows, which is worse than SQL that fails.

Converting Snowflake to ClickHouse: Key Syntax Differences

Translating SQL queries between Snowflake and ClickHouse involves subtle dialect differences that standard text find-and-replace often misses. Everything below is processed entirely in your browser using SQLParity.

Identifier Quoting

Snowflake: "name"

ClickHouse: `name`

String Literal Escaping

Snowflake: Quotes are doubled (''), backslash is an escape character.

ClickHouse: Quotes are doubled (''), backslash is an escape character.

Null-Safe Equality

ClickHouse: (colA <> colB OR (colA IS NULL AND colB IS NOT NULL) OR (colA IS NOT NULL AND colB IS NULL))

Why In-Browser SQL Conversion Matters

Database migrations frequently involve proprietary business logic, sensitive table schemas, and production column names. When converting SQL between Snowflake and ClickHouse, SQLParity executes all parsing, tokenization, and code rewriting locally in your browser. Zero queries or schemas are transmitted to remote servers.