pg_query_go
pgsql-parser
pg_query_go | pgsql-parser | |
---|---|---|
3 | 2 | |
607 | 120 | |
1.5% | 0.8% | |
5.8 | 8.8 | |
6 days ago | 2 days ago | |
C | PLpgSQL | |
BSD 3-clause "New" or "Revised" License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
pg_query_go
-
How we explored the best practices of GoReleaser X CGO
When implementing SQL Review for PostgreSQL, we introduced pg_query_go as the PostgreSQL parser. The pg_query_go uses the native PostgreSQL parser via C bind, which naturally requires CGO support.
-
sqlc: Generating go code from sql statements
If you are using Postgres then you are lucky! sqlc uses the official postgres parser (https://github.com/pganalyze/pg_query_go) and while I have never tried it, I guess it works really well.
-
Open Source SQL Parsers
Golang: pg_query_go
pgsql-parser
-
From Postgres Proto to TypeScript – new transpiler for tooling
pgsql-parser: https://github.com/launchql/pgsql-parser
Additionally, we now have new utilities generated by the proto parser, make sure to checkout the @pgsql/utils! That has some cool features in it:
@pgsql/enums: https://github.com/launchql/pgsql-parser/tree/main/packages/...
-
Open Source SQL Parsers
JS: psql-parser in Node and pg-query-emscripten in the browser
What are some alternatives?
pg_query - Ruby extension to parse, deparse and normalize SQL queries using the PostgreSQL query parser
zetasql - ZetaSQL - Analyzer Framework for SQL
pg_parse - PostgreSQL parser for Rust that uses the actual PostgreSQL server source to parse SQL queries and return the internal PostgreSQL parse tree.
libpg_query - C library for accessing the PostgreSQL parser outside of the server environment
pglast - PostgreSQL Languages AST and statements prettifier: master branch covers PG10, v2 branch covers PG12, v3 covers PG13, v4 covers PG14, v5 covers PG15, v6 covers PG16
Apache Calcite - Apache Calcite
ANTLR - ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.
parser - A MySQL Compatible SQL Parser
pg-query-emscripten - Emscripten Port of pg_query to easily play with it in the browser