gpt4 book ai didi

php - MySQL 按观看次数最多的方式对图像进行排序

转载 作者:行者123 更新时间:2023-11-29 05:30:07 24 4
gpt4 key购买 nike

我有一个图像表,其中存储图像 ID、标题、上传图像的用户、时间戳和文件扩展名。

我还有一个 View 表,用于记录查看图像的时间。这些列是 id、图像 id、时间戳和查看图像的用户。

我需要但不知道该怎么做的是运行一个 SQL 查询,该查询将按观看次数最多的顺序返回一组图像。

我一直在此处和 Google 上四处寻找,但只是不知道实际搜索什么。

最佳答案

SELECT images.*, count(views.view_id) view_count
FROM images
LEFT JOIN views on views.image_id = images.image_id
GROUP BY images.image_id
ORDER BY view_count DESC

http://sqlfiddle.com/#!2/a669b/5

GROUP BY 子句告诉“聚合函数”(计数、总和、最小值、最大值等)如何运行。在这种情况下,我们按图像分组并获取每张图像的浏览量。 COUNT只计算非空值,我们不想计算不存在的 View ,所以我们关闭 views.view_id .

如果您执行 INNER JOIN 而不是 LEFT JOIN,它只会返回具有 View 的图像。 LEFT JOIN 允许我们获得零计数。

关于php - MySQL 按观看次数最多的方式对图像进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15723534/

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