【问题标题】:Select indexes for all tables [duplicate]为所有表选择索引[重复]
【发布时间】:2016-08-07 21:40:40
【问题描述】:

如何获取数据库中所有表的所有索引? show index 之类的东西,但我可以为给定数据库上的所有表执行,更重要的是,我可以将其用作子查询。

请注意,我对主键不感兴趣,而是对另一个索引感兴趣。

编辑: 所以我正在寻找的解决方案是(基于 aarbor 的回答):

SELECT DISTINCT
    TABLE_NAME,
    INDEX_NAME,
    COLUMN_NAME
FROM INFORMATION_SCHEMA.STATISTICS
WHERE TABLE_SCHEMA = schema() and index_name <> 'PRIMARY';

【问题讨论】:

    标签: mysql


    【解决方案1】:
    SELECT DISTINCT
        TABLE_NAME,
        INDEX_NAME
    FROM INFORMATION_SCHEMA.STATISTICS
    WHERE TABLE_SCHEMA = 'your_schema';
    

    取自:This Post

    【讨论】:

    • 好的,谢谢。我没有意识到这个表也有列名。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-26
    • 2013-02-21
    相关资源
    最近更新 更多