问题描述
我们使用Azure Synapse Analytics。尝试删除列时
ALTER table my_table drop COLUMN my_column
它说: 统计信息“ Stat_616f789ac8c54c449f7910cb3bcb3810”取决于列“ my_column”。
但是我没有运气去找到说掉它们的统计数据:
select * from sys.stats where name like '%stat%'
我如何确定并消除这种烦人的障碍物?
解决方法
您可以使用对this查询的简单修改来显示表的自动创建的统计信息。进行以下更改:
where st.user_created = 0
and sm.name = 'MY_SCHEMA_NAME'
and tb.name = 'MY_TABLE_NAME'
然后使用DROP STATISTICS命令删除有问题的统计信息。
或者,请关闭自动统计信息,以避免创建您无法识别的统计信息。
文档here。