gpt4 book ai didi

php - 当我在 mysql 表结构中使用大量索引时,查询性能会降低

转载 作者:行者123 更新时间:2023-11-30 01:17:20 25 4
gpt4 key购买 nike

我有一个包含 1000 万条记录的表,该记录每周更新一次,可能会减少或可能增加。

对于这些记录,我将不得不使用不同的 where 子句执行选择查询,并且执行速度非常慢。

什么是认为更新和删除查询必须执行大量工作来更新和删除每列的索引。

因此我已截断表并再次插入记录。但它需要相同的时间,因此任何人都可以向我提供顺利执行查询的建议。

我有一个非常简单的查询,但需要太多时间(我使用 joomla 和 mysql)

SELECT *
FROM all_data
WHERE `stock` != 'Out of stock'
AND `sitename` = 'something.com'
AND `auction_time` = ''
AND `type` != 'Accessories'
GROUP BY `offer_new_name`

提前致谢

最佳答案

首先,在条件语句中使用字符串比较是不好的。

您应该使用类似

的代码
Out of Stock | 1

这样你就可以说:WHERE stock != 1 这将保存字符串比较。类型字段也是如此。这将节省相当多的时间。如果您只有 3 或 4 种不同的状态或类型,那么创建“查找表”通常是个好主意,那么您可以更快地查询它们。

Group By 也会减慢速度。查询只能做这么多,但最终您需要良好的数据库设计来使这些东西运行得更快。

关于php - 当我在 mysql 表结构中使用大量索引时,查询性能会降低,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18931972/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com