Php mysql select查询在使用where子句时非常慢
当我使用上述代码时,查询工作正常 但是当我使用下面的代码时,mysql非常慢Php mysql select查询在使用where子句时非常慢,php,mysql,mysqli,Php,Mysql,Mysqli,当我使用上述代码时,查询工作正常 但是当我使用下面的代码时,mysql非常慢 if ($result = mysqli_query($link, "SELECT * FROM `users`")) { while ($row = mysqli_fetch_assoc($result)) { } } 有人能告诉我为什么以及如何加快查询速度吗?您需要在name列上添加索引以加快查询速度。有很多方法可以加快查询速度 避免使用*,因为它首先查找所有列,然后给出它们。 解决方案
if ($result = mysqli_query($link, "SELECT * FROM `users`")) {
while ($row = mysqli_fetch_assoc($result)) {
}
}
有人能告诉我为什么以及如何加快查询速度吗?您需要在
name
列上添加索引以加快查询速度。有很多方法可以加快查询速度
*
,因为它首先查找所有列,然后给出它们。
解决方案-手动使用属性名称,例如:
if ($result = mysqli_query($link, "SELECT * FROM `users` WHERE name IS NULL")) {
while ($row = mysqli_fetch_assoc($result)) {
}
}
定义“非常慢”。你有多少行table@YourCommonSense我在表1中有5000行没有提供特定的数字。索引可能是答案,尽管这取决于数据库设置的其余部分,以及该表的其他操作(即这是一个每周执行一次的一次性选择,而不是每天执行1000次写入…?等等)。如果您有另一列已编制索引,则在select中使用该列作为子句可以加快它的速度。如果可能,这还取决于您的设置和其他查询,并不总是实用/可能/推荐的
Select `name`, `age`, `XYZ` from `users` where `name` IS NULL