【问题标题】:Is normal MySql index required when we have Composite index当我们有复合索引时是否需要正常的 MySql 索引
【发布时间】:2015-02-20 13:39:15
【问题描述】:

我们的 MySql 表有 2500 万行

以下是表格中的列

c_id,c_name,s_id,l_type,l_time,message,domain

其中我们在 c_id,c_name,s_id,l_type,domain 列上有正常的索引

我打算在域、l_time、l_type 列上添加复合索引。那么现在我可以删除域上的单个索引了吗?

谢谢

【问题讨论】:

    标签: mysql sql


    【解决方案1】:

    复合索引的任何前缀本身也将用作索引。所以如果你在(domain, log_time, log_type) 上有一个复合索引,它就相当于在domain(domain, log_time) 上有一个索引。也没有必要将这些索引分开,它们将是多余的并且浪费空间。

    因此,当您添加此复合索引时,您可以安全地删除 domain 上的索引。

    【讨论】:

      【解决方案2】:

      为添加复合索引删除单个索引不是强制性的,根据要求,您可以保留或删除它/它们。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-11-11
        • 2020-05-04
        • 2015-11-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多