gpt4 book ai didi

mysql - 如何使用 ORDER BY RAND() 优化此 SQL 查询

转载 作者:行者123 更新时间:2023-11-29 01:04:32 25 4
gpt4 key购买 nike

我正在尝试优化这个查询,因为它运行的数据库很大,而且主机说这个查询对服务器造成了严重的负载。我已经阅读了一些关于如何替换 ORDER BY RAND() 的其他答案,但我对 SQL 的了解还不够多,无法使这些答案适应这个特定的查询。谁能帮忙?时间差

  SELECT COUNT( p.prod_id ) AS no_prod, s.*
FROM product p, seller s
WHERE s.admin_status = '1'
AND s.pay_status = '1'
AND s.sub_type != ''
AND p.seller_id = s.seller_id
GROUP BY s.seller_id
HAVING COUNT( p.prod_id )>5
ORDER BY RAND()
LIMIT 0, 4

最佳答案

您最好添加一个包含字段 seller.admin_status、seller.pay_status、seller.sub_type 的非唯一索引。通过索引 WHERE 子句中引用的字段,您将获得最大的 yield 。

关于mysql - 如何使用 ORDER BY RAND() 优化此 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9421889/

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