The real PostgreSQL query parser
npm install pg-query-parserThe real PostgreSQL parser for nodejs. The primary objective of this module is to provide symmetric parsing
and deparsing of SQL statements. With this module you can modify parts of a SQL query statement and
serialize the query tree back into a formatted SQL statement. It uses the real PostgreSQL parser.
The main functionality provided by this module is deparsing, which PostgreSQL does not have internally.
``sh`
npm install pg-query-parser
Rewrite part of a SQL query:
`js
const parser = require('pg-query-parser');
const query = parser.parse('SELECT * FROM test_table').query;
query[0].SelectStmt.fromClause[0].RangeVar.relname = 'another_table';
console.log(parser.deparse(query));
// SELECT * FROM "another_table"
`
Parses the query and returns a parse object.
| parameter | type | description |
| -------------------- | ------------------ | --------------------------------------------------------- |
| query | String | SQL query |
Returns an object in the format:
``
{ query:
error: { message:
fileName:
lineNumber:
cursorPosition:
Deparses the query tree and returns a formatted SQL statement. This function takes as input a query AST
in the same format as the query property of on the result of the parse method. This is the primary
functionality of this module.
| parameter | type | description |
| -------------------- | ------------------ | --------------------------------------------------------- |
| query | Object | Query tree obtained from parse` |
Returns a normalized formatted SQL string.