gpt4 book ai didi

php - 从表中检索所有数据,然后计算另一个表中有多少结果

转载 作者:可可西里 更新时间:2023-11-01 08:36:12 25 4
gpt4 key购买 nike

我想知道仅使用一个 MySQL 查询是否可行。

我正在做的是一个标签系统。因此,我有两个表:

标签,id |标题

标签,id |图片编号 |标签编号 |时间戳 |强度

一切正常,但现在我要向我的用户显示标签并计划按标签的使用次数对它们进行排序。

所以简而言之,我需要一些可以执行以下操作的东西,

  1. 获取当前显示的图像的所有标签,例如 id = 34
  2. 计算标签被使用的次数。
  3. 按照这些结果从高到低对标签列表进行排序。

现在我已经尝试研究联接、左联接等,但它们看起来都让人不知所措,我发现很难掌握它。

如果有人能解释如何轻松地做到这一点,那就太好了!

编辑

我现在有这个

SELECT tags.id, COUNT( tagged.id ) AS count
FROM tags
INNER JOIN tagged ON tags.id = tagged.tag_id
WHERE tagged.image_id = '1'
GROUP BY tags.id
ORDER BY count DESC

这只返回一个标签被标记到当前 image_id 的次数,我该怎么做才能从所有图像中计数?

最佳答案

您可以优化 SQL 查询来为您完成这项工作:

SELECT tags.id, COUNT(id) AS count
FROM tags
INNER JOIN tagged ON tags.id = tagged.tag_id
WHERE tagged.image_id = 34;
GROUP BY tags.id

这将选择每个设置为在图像 id 34 上标记的标签,然后获取使用该标签的图像总数。 Visual explanation of JOINs

关于php - 从表中检索所有数据,然后计算另一个表中有多少结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11835117/

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