SQLFormatter
FormatterConvertPricingDocsGet Pro
SQL Converter · OracleSnowflake

Convert Oracle SQL to Snowflake

Oracle to Snowflake keeps || and NVL but replaces ROWNUM paging with QUALIFY / LIMIT and SYSDATE with CURRENT_TIMESTAMP(). A mechanical formatter only re-indents — it won’t rewrite dialect-specific syntax. The AI converter in the app translates the query and the table below shows exactly what changes.

Oracle — source
Oracle
SELECT e.dept_id, e.employee_id, e.salary
FROM (
  SELECT e.*, ROWNUM rn
  FROM employees e
  ORDER BY e.salary DESC
) e
WHERE rn <= 5;
Snowflake — converted
Snowflake
SELECT e.dept_id, e.employee_id, e.salary
FROM employees e
QUALIFY ROW_NUMBER() OVER (ORDER BY e.salary DESC) <= 5;
Convert your own query

What changes from Oracle to Snowflake

OracleSnowflakeWhy
ROWNUM subqueryQUALIFY ROW_NUMBER()Snowflake's QUALIFY filters window functions without a wrapping subquery.
SYSDATECURRENT_TIMESTAMP()Current-time function differs.
NVL / ||NVL / ||Both are supported in Snowflake, so they carry over unchanged.

Other SQL conversions

OraclePostgreSQLOracleMySQLT-SQLSnowflakeMySQLSnowflakePostgreSQLSnowflakeAll conversions →