作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有两个单独的表 tbl_name
和 tbl_parent
。
这是我的数据库的样子:
tbl_name
member_id first_name last_name
0 John Doe
1 Jane Doe
2 Julie Doe
3 Billy Joe
tbl_parent
member_id parent_id
0 Null
1 0
2 0
3 Null
正如你所看到的,tbl_name 保存了关于成员的数据,而 tbl_parent 用于定义 tbl_name 中每条记录的关系。
tbl_parent 中的 parent_id 只是引用 member_id,因此根据给定的表,John Doe 是 Jane Doe 和 Julie Doe 的 parent 。
现在我要计算所有 parent_id 为 0 的人,
这是我的查询,当它们不在不同的表中时,它工作正常。
select *, count(parent_id) from tbl_parent group by parent_id
我遇到的困难是我无法正确显示两个表
我希望输出为:
member_id first_name last_name child
0 John Doe 2
1 Jane Doe 0
2 Julie Doe 0
3 Billy Joe 0
最佳答案
试试这个:
SELECT tbl_name.*, COUNT(tbl_parent.member_id) AS child
FROM tab_name
LEFT JOIN tbl_parent ON tbl_name.member_id = tbl_parent.parent_id
GROUP BY tbl_name.member_id
关于mysql - 使用两个表在 MySQL 中实现 Count() 和 Group By(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19637423/
我是一名优秀的程序员,十分优秀!