gpt4 book ai didi

mysql - 在 MySQL 查询中需要帮助 - GROUP BY

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

我需要帮助来为我的数据库创建查询。

我有两张 table ,

Assets ,包括(主机名、所有者、工程师、日期、分支)

branch 由(id, name, address, region)组成

branch.id 是连接到显然是外键的 asset.branch 的主键。

我想创建一个查询来显示分支信息(id、名称、地址、区域)和该分支中的 Assets 数量。

我试过这个查询:

SELECT b.id, b.name, b.address, b.xcor, b.ycor, b.status, 
COUNT(a.hostname) AS noofasset
FROM branch b, asset a
WHERE a.branch = b.id
GROUP BY b.id;

一目了然,但无法显示其中没有 Assets 的分支信息。我需要一个同时显示 Assets 为 0 的分支机构的查询。

最佳答案

SELECT b.id, b.name, b.address, b.xcor, b.ycor, b.status, 
COUNT(a.hostname) AS noofasset
FROM branch b
LEFT JOIN asset a
on a.branch = b.id
GROUP BY b.id, b.name, b.address, b.xcor, b.ycor, b.status

LEFT join 表示包括所有分支,无论 Assets 是否存在。

site从视觉上解释左、右外完整和连接类型。我喜欢它 :D

使用您更熟悉的语法(我认为)

SELECT b.id, b.name, b.address, b.xcor, b.ycor, b.status, 
COUNT(a.hostname) AS noofasset
FROM branch b, asset a
WHERE a.branch(+) = b.id
GROUP BY b.id;

关于mysql - 在 MySQL 查询中需要帮助 - GROUP BY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10184124/

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