类似 Metabase 的语法,SELECT * FROM xxxx WHERE 1=1 [[AND param={{param}}]]这种?
https://github.com/metabase/metabase/blob/master/src/metabase/driver/common/parameters/parse.clj
Metabase 的 Clojure 源码没经验实在是看不懂,类似的不知道有没有开源得到过的验证的库?如果没得话只能自己写解析了就不知道会有多少坑。
类似 Metabase 的语法,SELECT * FROM xxxx WHERE 1=1 [[AND param={{param}}]]这种?
https://github.com/metabase/metabase/blob/master/src/metabase/driver/common/parameters/parse.clj
Metabase 的 Clojure 源码没经验实在是看不懂,类似的不知道有没有开源得到过的验证的库?如果没得话只能自己写解析了就不知道会有多少坑。
|
theOneMeDec 21, 2022
1
用 antlr 可以做,而且可以参考 hive 中写的 g4 文件
|
|
zvvvvvDec 21, 2022
2
可以试试 calcite ,自己添加解析规则
|
|
hidemyselfDec 21, 2022
3
ANTLR,官方的 example 中好像就有解析 SQL 的 g4 ,自己写也可以,就是学习成本稍微有点高
|
|
5200721Dec 21, 2022 via Android
4
druid 带有解析工具,SqlUtils.parseStatements(),但是最近使用,解析 HQL 经常出现奇怪的问题。
|