gpt4 book ai didi

php - 从数据库中随机选择一行的函数!

转载 作者:行者123 更新时间:2023-11-29 03:58:22 29 4
gpt4 key购买 nike

我正在创建一个在线商店网站,该网站需要从数据库中选择随机产品的功能。

想法是每次加载网页时都会有一个不同的随机产品广告!

使用 PHP,我将如何做这件事?

tbl_products

编号代码标题库存成本rrp

这些是我需要从数据库访问的行。

谢谢

最佳答案

最直接的解决方案是:

SELECT  *
FROM tbl_products
ORDER BY
RAND()
LIMIT 1

但是,随着产品数量的增加,这种效率会降低。

这个解决方案:

效率更高,但仍然需要全表扫描。

如果您的产品 ID 或多或少均匀分布,请使用:

SELECT  p.*
FROM (
SELECT
(
(
SELECT MAX(id)
FROM tbl_products
) -
(
SELECT MIN(id)
FROM tbl_products
)
) * RAND() AS rnd
) q
JOIN tbl_products p
ON id >= rnd
ORDER BY
id
LIMIT 1;

如果您在 id 之间存在差距,则往往会更频繁地选择大差距之后的产品。

您可以为此目的使用一个特殊的唯一列而不是 id,您应该在 cron 作业中无间隙地填充它。

关于php - 从数据库中随机选择一行的函数!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6748609/

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