-1

如何提高以下查询的性能?我应该使用什么样的索引?我正在使用 MySQL

SELECT b.title
FROM book b, person p, order o
WHERE b.bid = o.bid
AND o.pid = p.pid
AND b.title LIKE 'LOVE%';
4

1 回答 1

0

你应该看看MySQL 如何使用索引

对于您的查询:

  • 我特别推荐、和上的索引b.bid,因为它们用于连接表。您甚至可能要考虑使用外键。o.bido.pidp.pid
  • 我也会考虑一个索引b.title,因为你在 where 子句中使用了这个。

但是,如果您想知道更改如何影响您的查询,您应该在每次更改之间进行分析,以检查它如何影响性能。

但是,我会要求您详细说明您的查询 - 您正在加入表orderperson,但既不从这些表中选择也不在 where 子句中使用它们。您这样做只是为了选择已订购的书籍吗?在这种情况下,你为什么还要加入person

于 2012-08-19T21:05:04.180 回答