gpt4 book ai didi

php - 三张表的行数MySQL

转载 作者:可可西里 更新时间:2023-11-01 07:33:41 25 4
gpt4 key购买 nike

我的 MySQL 数据库是这样的

**table_schools**
id | name
1 | school_1
2 | school_2

**table_classes**
id | class | school_id
1 | a | 1
2 | b | 1
3 | c | 2
4 | d | 2
5 | e | 2

**table_students**
id | name | class_id
1 | Nick | 1
2 | Tom | 2
3 | Kevin | 3
4 | Jane | 4
5 | Mark | 5
6 | Tim | 5
7 | Lynn | 5

我想要这样的输出:

school_name | class_count | student_count
school_1 | 2 | 2
school_2 | 3 | 5

有没有办法在一个 sql 查询中做到这一点?以及如何?

最佳答案

SELECT  s.name, COUNT(DISTINCT c.id) AS classes, COUNT(st.id) AS students
FROM table_schools s
LEFT JOIN
table_classes c
ON c.school_id = s.id
LEFT JOIN
table_students st
ON st.class_id = c.id
GROUP BY
s.id

关于php - 三张表的行数MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4829601/

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