我试图执行以下查询以从我的架构中获取 index
的计数。
select count(*) from USER_INDEXES;
——这给了我397
但是
select count(*) from ALL_INDEXES where table_owner ='MY_SCHEMA';
-- 给了我357
。
听起来怎么样?两者应该是一样的吧?
当我从 Oracle SQL Developer
处通过自己计算索引进行检查时,给了我 397
最佳答案
这是因为, View ALL_INDEXES
包含当前用户有能力修改的所有索引。您将不会在此 View 中看到 LOB 索引,因为无法重命名、重建或修改 LOB 索引。
而USER_INDEXES
View 包含用户拥有的所有索引。如果查询 LOB 索引的用户与创建它的用户是同一用户,则该 LOB 索引将位于此 View 中。
关于oracle - 从 USER_INDEXES 和 ALL_INDEXES 开始计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21324069/