我的order by语句有索引问题。我有一个正在快速运行的查询:

SELECT name from members where kat = 2 order by date DESC;

我在成员表上有一个复合索引:
kat_index(kat,date);

现在我的应用程序改变了,我添加了一个这样的查询:
SELECT name from members where kat = 2 order by logged_in DESC, status DESC, date DESC;

现在查询速度变慢了,因为它正在使用文件排序。所以问题是。。。我应该添加什么类型的索引来满足这两个查询?

最佳答案

您应该有两个索引:

(kat, date)
(kat, logged_in, status, date)

每个查询都将使用最适合该查询的索引。

关于mysql - 按性能问题排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7529532/

10-12 16:07