此查询运行缓慢:
SELECT UserAccountNumber, balance, username FROM users JOIN balances ON
users.UserAccountNumber=balances.UserAccountNumber WHERE date < “2011-02-02”
我能做些什么来提高它的性能?
我想用用户ID代替userAccountNumber作为连接。
据我所知,Appart形成了JOIN和users.id=balances.idUser以相同的速度执行。。。
所以。。我还能做些什么改进呢?
谢谢。
最佳答案
在我看来,查询本身看起来没问题,但请确保UserAccountNumber
列(因为它们涉及连接)和date
列(您正在搜索的列)上都有索引。如果数据库必须对许多记录进行顺序扫描,那将很慢。使用EXPLAIN SELECT
可以帮助您了解数据库实际上是如何执行查询的。