npm install cuopyue[![NPM version][npm-image]][npm-url]
[npm-image]: https://img.shields.io/npm/v/cuopyue.svg?style=flat-square
[npm-url]: https://www.npmjs.com/package/cuopyue
Install cuopyue using npm:
``bash`
npm install coupyue -S
Import coupyue in your js file
`javascript`
import { parser } from 'cuopyue';
Then, call parserSparksql method
`javascript`
const sql = 'select age, nickname from userInfo; select id, price from payInfo;'
const tree = parser.parserSparkSql(sql);
...
You will get an array of syntax tree.
`javascript`
import { parser } from 'cuopyue';
const sql = 'select age, nickname fr1om userInfo;'
parser.parserSparkSql(sql, (recognizer, offendingSymbol, line, column, msg) => {
const errorText = offendingSymbol.text;
console.error(msg);
});
`javascript`
import { parser, visitor } from 'cuopyue';
const sql = 'select age, nickname from userInfo as u;'
class Visitor extends visitor.SparkTreeVisitor {
visitTableName (ctx) {
const tableName = ctx.tableIdentifier().getText();
const tableAlias = ctx.tableAlias().strictIdentifier().getText();
super.visitTableName(ctx);
}
}
parser.parserSparkSql(sql, null, new Visitor());
`javascript``
import { parser, visitor } from 'cuopyue';
const sql = 'select age, nickname from userInfo as u;'
let formatVisitor = new visitor.SparkFormatVisitor();
parser.parserSparkSql(sql, null, formatVisitor);
console.log(formatVisitor.getFormatText());