使用Presto parser解析SQL
Presto的语法解析器是使用ANTLR生成的
PrestoDB的parser g4语法文件
https://github.com/prestodb/presto/blob/master/presto-parser/src/main/antlr4/com/facebook/presto/sql/parser/SqlBase.g4
PrestoSQL(Trino)的parser g4语法文件
https://github.com/trinodb/trino/blob/master/core/trino-grammar/src/main/antlr4/io/trino/grammar/sql/SqlBase.g4
如果想在java代码中使用Presto的parser进行语法解析的话,可以引用下面的依赖
PrestoDB(Facebook版本)
<dependency> <groupId>com.facebook.presto</groupId> <artifactId>presto-parser</artifactId> <version>0.285.1</version> </dependency>
PrestoSQL(社区版本,350及其以下版本叫prestosql,以上改名为Trino)
<dependency> <groupId>io.prestosql</groupId> <artifactId>presto-parser</artifactId> <version>330</version> </dependency>
Trino(社区版本,版本从351开始)
<dependency> <groupId>io.trino</groupId> <artifactId>trino-parser</artifactId> <version>351</version> </dependency>
presto parser的使用
本文只发表于博客园和tonglin0325的博客,作者:tonglin0325,转载请注明原文链接:https://www.cnblogs.com/tonglin0325/p/5285064.html