我有一个问题,搜索使用php, mysql



我有50M的数据在我的数据库(mysqlphpmyadmin),当我用php在这些数据中搜索时它花费了很多时间,非常慢

我该如何解决这个问题?

my code:

$mysql_search = "SELECT * FROM data WHERE columns='value'";
$search_query = mysqli_query($conn, $mysql_search);
foreach($search_query as $row){
echo $row['id'];
}

和感谢

我已经尝试过使用limit和Like但是什么也没发生

$mysql_search = "SELECT * FROM data WHERE columns LIKE 'value%' LIMIT 5";

我可以建议你做三件事来提高你的搜索性能:

使用索引:column上添加索引可以显著提高搜索的性能,特别是在有一个大表的情况下。在这种情况下,在你的column字段,你试图做那个搜索。例如:

CREATE INDEX index_name_column ON data (column);

优化查询:确保您的查询已针对性能进行了优化。例如,在搜索

时,尝试只获取必需的字段
$mysql_search = "SELECT filed1, field2 FROM data WHERE columns LIKE 'value%' LIMIT 5";

Use LIMIT and OFFSET:选择只在进行搜索时需要的行。例如:您可以组合LIMITOFFSET以缩小搜索结果的范围,如-

$mysql_search = "SELECT field1, field2 FROM data WHERE columns LIKE 'value%' LIMIT 5 OFFSET 10";

最新更新