谁能告诉我如何在SELECT / FROM语句中替换所有表名的名称?我正在寻找一种适用于香草查询以及带有子查询和联接的更复杂查询的方法。
即
新表名称:new_table
原始查询:SELECT * from table
;
结果查询:SELECT * FROM new_table
;
非常感谢
j
答案 0 :(得分:0)
如果您的查询与您要提出的查询一样简单,则应该可以从parsing the query开始,它将为您提供SqlSelect
对象。从那里,您可以使用getFrom
来检查它是否是您要更改的表,并使用setFrom
进行更改。
如果要处理更复杂的查询,则应该能够实现SqlVisitor
接口来查找所有要替换的表。