0.1.0 • Published 1 year ago

sql-parser-ast v0.1.0

Weekly downloads
-
License
GPL-2.0-or-later
Repository
github
Last release
1 year ago

SQL Parser AST

Uses sql-parser-cst to parse SQL first into Concrete Syntax Tree (CST) and then converts the result to Abstract Syntax Tree (AST).

Synopsis

import { parse } from "sql-parser-ast";

parse("SELECT * FROM customer WHERE age > 10", { dialect: "sqlite" });

The parse() function returns the following AST:

{
  "type": "program",
  "statements": [
    {
      "type": "select_stmt",
      "columns": [{ "type": "all_columns" }],
      "from": {
        "type": "identifier",
        "name": "customer"
      },
      "where": {
        "type": "binary_expr",
        "left": {
          "type": "identifier",
          "name": "age"
        },
        "operator": ">",
        "right": {
          "type": "number_literal",
          "value": 10
        }
      }
    }
  ]
}

For now it takes the exact same parameters as sql-parser-cst. But the includeSpaces, includeNewlines, includeComments options have no effect.

Development status

This project is still in very early stages of development.

It supports a fair amount of SQLite syntax, but a lot of stuff is still missing.

Don't use it in production.

0.1.0

1 year ago