gpt4 book ai didi

mysql - 每人如何使用MYSQL LIMIT

转载 作者:行者123 更新时间:2023-11-30 23:35:58 25 4
gpt4 key购买 nike

所以我有一个场景,其中有 1-8 个人,我需要查询每个人最多 3 个他们“喜欢”的东西。我将查询设置为

SELECT liked FROM likeTable WHERE uid IN (uid1,uid2,uid3,uid4) LIMIT 12

但很明显,当我对 uid1 有 12 个“喜欢”时,这可能会停止,其余的为 0。我阅读了一个可能的解决方案,例如使用 UNION ALL...

(SELECT liked FROM likeTable WHERE uid = uid1 LIMIT 3)
UNION ALL
(SELECT liked FROM likeTable WHERE uid = uid2 LIMIT 3)
UNION ALL
(SELECT liked FROM likeTable WHERE uid = uid3 LIMIT 3)
UNION ALL
(SELECT liked FROM likeTable WHERE uid = uid4 LIMIT 3)

我可以通过使用 forloop 在 php 中创建 sql 查询字符串来实现这一点,但这是查询数据的有效方式吗?

注意:我并不真正关心“喜欢”的检索顺序,尽管如果我可以添加一个 ORDER BY likeID DESC 会很好,这是我的自动递增列

谢谢!

最佳答案

对于少量(我会说不是数百个)类别(用户),只需使用联合解决方案。

我能否通过使用 forloop 在 php 中创建 sql 查询字符串来实现此目的,但这是查询数据的有效方式吗?

绝对是的!除非你一口气查询上百个用户。对于 1-8 人来说,这是完美的解决方案!

关于mysql - 每人如何使用MYSQL LIMIT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7358615/

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