获取 DB2 上的索引列

Uoo*_*ooo 2 sql db2 indexing

在 DB2 中如何获取表索引使用的列?

我试过:

DESCRIBE INDEXES FOR TABLE 'MYTABLE' SHOW DETAIL;
Run Code Online (Sandbox Code Playgroud)

但我收到错误消息

非法符号“索引”。一些可能合法的符号是: PROCEDURE PROC。SQLCODE=-104,SQLSTATE=42601,驱动程序=4.16.53

理想情况下,我想要表使用的所有索引及其相应列的信息。

我正在使用 DB2 for z/OS V9.1

Uoo*_*ooo 6

您可以使用此查询来显示表的索引及其列:

SELECT IX.tbname, 
       KEY.ixname, 
       KEY.colname 
FROM   sysibm.syskeys KEY 
       JOIN sysibm.sysindexes IX 
         ON KEY.ixname = IX.name 
WHERE  IX.tbname IN ( 'SOMETABLE', 'ANOTHERTABLE' ) 
ORDER  BY IX.tbname, 
          KEY.ixname, 
          KEY.colname; 
Run Code Online (Sandbox Code Playgroud)