gpt4 book ai didi

php - 我怎样才能使这个 SQL 查询最有效?

转载 作者:行者123 更新时间:2023-11-29 08:57:27 24 4
gpt4 key购买 nike

我正在制作一个网站,其中包含用户添加的大量图像。

我想从该池中随机选择一张图像,并将其显示给用户,但我想确保该用户以前从未见过该图像。

所以我在想:当用户查看图像时,我在 MYSQL 中创建一行 INSERT,为每个条目显示“此用户已在(时间)观看此图像”。但问题是,由于可能有大量用户和大量图像,因此该表很容易快速增长到数万个条目。

因此,也可以这样做:我正在考虑为每个用户创建一行 INSERT,并在一个字段中插入一个数组,其中包含用户观看过的图像的所有 id。

我什至可以对数组执行此操作:base64_encode(gzcompress(序列化($array)

然后:反序列化(gzuncompress(base64_decode($array))

你认为我应该做什么?编码/解码功能是否足够快,或者至少比我在帖子开头描述的传统方式更快?

这种压缩是否足以将大块数据存储到一个数据库字段中? (想象一下,如果用户查看了数千张图片?)

非常感谢

最佳答案

in ONE field, I insert an array all id's

在几乎所有情况下,像这样序列化值都是不好的做法。让数据库发挥其设计作用——高效处理大量数据。只要确保交叉表在用户字段上有索引,检索用户看过的图像列表就不会是一个昂贵的操作,无论表中的行数如何。几万条条目不算什么。

关于php - 我怎样才能使这个 SQL 查询最有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9592143/

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