【发布时间】:2014-10-14 19:18:42
【问题描述】:
我有 2 张桌子:
users:
| id | name | email | pass |
requests:
| id | userId | date | text |
requests.userId 是users.id 的外键。现在使用 php,我的查询看起来或多或少像这样:
select u.name,r.date,r.text from requests r
JOIN users u ON u.id=r.userId
order by u.name ASC
我只想让它们按用户名的字母顺序排序。它工作得非常慢,我正在阅读索引但没有发现这样的问题。有没有人对此有任何想法,我该如何加快速度?谢谢。
编辑: 为此,我创建了超过 5000 个用户和 2000000 个请求的数据库,这样我就可以看到它什么时候变慢了。当它按整数或日期排序时,速度会快几倍。
【问题讨论】:
-
那么您在
name列上有索引吗……? -
我无法将其添加到名称列。我一直在寻找制作索引所需的内容,但没有任何结果。
-
你不能究竟是什么意思?手册中描述了如何添加索引,dev.mysql.com/doc/refman/5.6/en/create-index.html
标签: php mysql optimization