2

我有一个简单的表“t1”,其中包含:

word VARCHAR(16)
id INT
importance SMALLINT

word 和 id 一起是唯一的,但都不是唯一的。

我添加了一个UNIQUE INDEX(word, id)

我的查询看起来像这样:

SELECT id FROM t1 WHERE word = "something" ORDER BY importance DESC

但它需要 0.0002 秒来执行说:

SELECT id FROM t1 WHERE word = "something"

但是执行ORDER BY importance DESC.

我的问题是,我怎样才能索引/重新排序我的表,以便它首先按单词组织,然后按重要性进行组织,而不必即时进行排序?

我可以重新排序静态数据,以便word, importance DESC默认排序吗?

4

1 回答 1

2

要加快查询速度,请在(word, importance DESC, id).

您可以在一张表上拥有多个索引,因此如果您不想删除现有索引,则无需删除。

于 2012-06-08T21:11:10.057 回答