gpt4 book ai didi

php - 在 COUNT SQL 查询中将 NULL 包含为 0

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

我知道事实上这个问题之前已经被问过几次了,但是与此相关的回答问题似乎都不起作用或者对我来说太令人困惑了..

我也许应该解释一下。

我正在尝试创建一个 AJAX 脚本来运行,以按“喜欢”的数量对某些结果进行排序。

我当前的代码是这样的:

SELECT COUNT(*) AS total, likes.palette_id, palette.*
FROM likes LEFT JOIN palette ON likes.palette_id = palette.palette_id

GROUP BY likes.palette_id
ORDER BY total DESC

这工作正常,但是由于显而易见的原因,它没有列出 0 个喜欢的结果,它们不存在于表中。

我已附加当前表格的图像:

喜欢表: http://imgur.com/EGeR3On

调色板表: http://imgur.com/fKZmSve

在用户点击“赞”之前,表中不会有任何结果。然后数据库会被更新,palette_id 和 user_id 会被插入。

我正在尝试计算 *palette_id* 在“喜欢”表中出现的次数,但对于未出现在“喜欢”表中的所有调色板也显示 0。

这可能吗?如果是这样,有人可以帮助我吗?

谢谢

最佳答案

这可能不是准确的 MySQL 语法(我习惯了 SQL Server),但如果需要的话应该可以非常直接地进行翻译。

SELECT p.*, IFNULL(l.total, 0) AS total
FROM palette p
LEFT JOIN (
SELECT palette_id, COUNT(*) AS total
FROM likes
GROUP BY palette_id
) l
ON l.palette_id = p.palette_id
ORDER BY total

关于php - 在 COUNT SQL 查询中将 NULL 包含为 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19579813/

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