是否可以以编程方式找到Netezza表正在使用的分布算法?
我可以通过导出表DDL在Workbench中手动完成,但我希望能够通过运行某种元数据SQL查询以编程方式完成它。
我查看了大多数系统表,但无法在任何地方找到此信息。
有什么想法吗?
答案 0 :(得分:5)
可能有解决方案。
运行此查询:
select * from _v_table_dist_map where database='database' and tablename='tablename';
如果没有返回任何行,则可以假设正在使用随机分布(DISTRIBUTE ON RANDOM)。
如果它返回1行或更多行,则使用基于列的解除(DISTRIBUTE ON(col1,...,coln))。