查询长定义视图时view_definition字段内容被截断的求助
解决Vertica视图定义查询被截断的问题
Vertica系统视图VIEWS(含V_CATALOG.VIEWS)中的view_definition字段存在默认长度限制(最大存储32672字符),这就是你的长视图定义被截断至32354字符的原因。
无需修改目标视图,直接用以下方法获取完整定义:
单视图查询:使用Vertica内置的
GET_VIEW_DEFINITION函数,该函数不受字符长度限制,可返回完整的视图创建语句:SELECT GET_VIEW_DEFINITION('public.MyView');批量查询非系统视图:结合系统视图与上述函数,批量获取所有非监控、目录 schema 下视图的完整定义:
SELECT TABLE_SCHEMA, TABLE_NAME, GET_VIEW_DEFINITION(TABLE_SCHEMA || '.' || TABLE_NAME) AS full_view_definition FROM VIEWS WHERE UPPER(TABLE_SCHEMA) NOT IN (UPPER('V_MONITOR'), UPPER('V_CATALOG'));
内容的提问来源于stack exchange,提问作者Shahar Shokrani
相关产品推荐
相关产品推荐

