Maximo:ASSET table 有重复的索引?

Maximo: ASSET table has duplicate indexes?

我已经 investigating 在 Maximo 7.6.1.1 asset table 上的索引。

我注意到有几个索引似乎是重复的:

select  
    *
from    
    all_indexes
where   
    table_name = 'ASSET'
    and index_name in ('ASSET_NDX1','ASSET_NDX14')


索引是否重复?

如果不是,它们各自的用途是什么?

它们不一样,因此它们可能都对不同的查询有用:

这可以使用 ASSET_NDX14(而不是触摸 table):

select siteid 
from asset
where assetnum = :a;

这可以使用 ASSET_NDX1(而不是触摸 table):

select assetnum
from asset
where siteid = :s;

有关复合索引的更多详细信息,请参见Oracle Database Concepts Guide

您 运行 对 Maximo 数据库的以下查询将为您提供资产使用的索引:

select mi.tbname, mi.name, mk.colseq, mk.colname, mk.ordering  from maxsysindexes mi
join maxsyskeys mk on mk.ixname = mi.name
where mi.tbname = 'ASSET'
order by mi.tbname, mi.name, mk.colseq;

Oracle database equivalent 将是:

SELECT table_name, index_name, column_position, column_name, descend 
FROM all_ind_columns 
WHERE table_name ='ASSET'
ORDER BY table_name, index_name, column_position

您也可以在 Maximo 中查看相同的信息: * 进入系统配置 > 数据库配置 * 查找资产对象 * 查看索引选项卡

你可以比较一下你问的两个指标。虽然我在这里安装了 7.6.1.1,但索引名称可能会有所不同,具体取决于您进行了多少自定义配置。