gpt4 book ai didi

php - mysql 左连接计数总是返回 1

转载 作者:行者123 更新时间:2023-11-29 04:18:16 25 4
gpt4 key购买 nike

这是我的数据结构:

categories 
id name
-------------------
1 category1
2 category2
3 category3


items
id name cat
-------------------
1 item1 1
2 item2 1
3 item3 1
4 item4 2

期望的输出:

cat   category    total_items
-----------------------------------
1 category1 3
2 category2 1
3 category3 0

我尝试了以下查询:

select categories.id as cat, 
categories.name as category,
count(*) AS total_items from categories
left join items on categories.id = items.cat

对于类别 3,它将始终返回 1 .. 有什么问题吗?

最佳答案

试试这个:

select categories.id as cat, categories.name as category, 
count(items.cat) AS total_items
from categories
left join items on categories.id = items.cat

您的查询的问题是 COUNT(*) 按行计数,包括来自 items 的具有 NULL 值字段的行表。

改为使用 count(items.cat),将 NULL 值字段排除在外。

关于php - mysql 左连接计数总是返回 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34314786/

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