{"categories":[{"label":"Database","url":"https://skillfed.io/packages/category/database/5"}],"enrichment":{"capability":"Parses, transpiles, and optimizes SQL across 23 different dialects without any runtime dependencies, enabling you to convert queries between systems like DuckDB, Presto, Spark, Snowflake, and BigQuery.","skillfed_tags":["sql-transpiler","query-parsing","dialect-conversion"],"use_cases":["Translate SQL queries between database systems (e.g., convert Spark SQL to DuckDB or Snowflake syntax).","Format and normalize SQL code across a codebase with consistent dialect rules and identifier handling.","Extract metadata from queries\u2014find all columns, tables, or projections referenced in a SELECT statement.","Build or modify SQL queries programmatically by constructing and manipulating expression trees.","Optimize SQL queries using the built-in optimizer before execution or deployment."],"what_it_does":"acryl-sqlglot is a pure-Python SQL parser and transpiler that reads SQL in one dialect and outputs it in another. It supports 23 different SQL dialects including DuckDB, Presto, Trino, Spark, Databricks, Snowflake, and BigQuery. The package can format SQL, translate between dialects, optimize queries, analyze metadata (find columns and tables), build SQL programmatically, and traverse abstract syntax trees. It includes a comprehensive test suite and is performant despite being written entirely in Python.\n\nThe parser is designed to be forgiving rather than strict\u2014it aims to read a wide variety of SQL inputs and output syntactically and semantically correct SQL in the target dialect, but does not aim to be a SQL validator and may not detect certain syntax errors. You can customize the parser, configure how it handles dialect incompatibilities (warn or raise), and inspect or modify parsed query trees. It preserves comments on a best-effort basis and handles identifier delimiters and data type translation across dialects.","worth_installing":"Yes. acryl-sqlglot is a mature, actively maintained tool with zero runtime dependencies, permissive licensing, and no known vulnerabilities. It solves a concrete problem\u2014cross-dialect SQL translation\u2014that is difficult to do correctly by hand. Install it if you need to work with SQL across multiple database systems or parse and analyze SQL programmatically."},"id":"acryl-sqlglot","links":{"html":"https://skillfed.io/packages/acryl-sqlglot","md":"https://skillfed.io/packages/acryl-sqlglot.md","pypi":"https://pypi.org/project/acryl-sqlglot/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2024-10-16","license_spdx":null,"license_treatment":"permissive","name":"acryl-sqlglot","python_support":"supports_current","summary":"An easily customizable SQL parser and transpiler"},"popularity":{"monthly_downloads":95328,"position":13270,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"25.25.2.dev9"}
