db2 UDB count(*)从视图返回0,但是select *返回有效数据

时间:2019-01-03 21:34:33

标签: count db2

我在DB2 UDB V11中遇到了一个奇怪的情况。

当我从 view_name 运行SELECT COUNT(*)时,它将返回0行。

但是,当我运行SELECT * FROM *view_name*时,数据将正确返回。

我尝试删除并重新创建视图,并在基础表上运行REORG和RUNSTAT。

以前有人见过这种情况吗?

1 个答案:

答案 0 :(得分:0)

在涉及MQT之前,我已经看到了这一点。因为优化器将使用最佳方式进行查询,并且可以重写它以使用MQT,所以当MQT尚未刷新但表itef已被更新/删除时,就可能发生这种情况。

因此,检查是否涉及任何MQT。