如何在vertica中生成和运行动态sql

如何在vertica中生成和运行动态sql,vertica,Vertica,我计划在查找表中维护派生字段的逻辑,并考虑实时运行动态sql语句 例如,如果字段company_type是基于以下逻辑派生的 当substr(公司代码,1,3)='XYZ'然后substr(公司代码,4,6)时的情况 当substr(公司代码,1,3)=“ABC”时,则substr(公司代码,7,9) else substr(公司代码,1,3)结束 为了避免在业务部门提供新案例时更改代码,我希望在如下查找表中维护逻辑 order src_filed

我计划在查找表中维护派生字段的逻辑,并考虑实时运行动态sql语句

例如,如果字段company_type是基于以下逻辑派生的

当substr(公司代码,1,3)='XYZ'然后substr(公司代码,4,6)时的情况
当substr(公司代码,1,3)=“ABC”时,则substr(公司代码,7,9)
else substr(公司代码,1,3)结束

为了避免在业务部门提供新案例时更改代码,我希望在如下查找表中维护逻辑

order          src_filed                               src_value 
--------------------------------------------------------------
  1     substr(company_code,1,3)='XYZ'          substr(4,6)
  2     substr(company_code,1,3)='ABC'          substr(7,9)
  3                                             substr(1,3)

现在,基于查找表中的数据,我希望能够动态生成case语句,并能够运行case语句。请注意,我需要将动态sql作为另一个sql的一部分运行,在这里我查询具有源字段的源表。

Vertica中还不存在此功能。希望在未来的版本中。最简单的方法是编写一个脚本,通过vsql或jdbc执行sql