使用 COUNT 和 INNER JOIN 选择查询

Posted

技术标签:

【中文标题】使用 COUNT 和 INNER JOIN 选择查询【英文标题】:SELECT Query with COUNT and INNER JOIN 【发布时间】:2020-06-30 14:23:33 【问题描述】:

我面临一些困难,因为我在 SQL 方面不是很有经验。所以我有桌子:

----------------- ----- |会员信息 | |客户信息 | ----------------- ----- |身份证 (PK) | | client_id (FK) | |姓名 | | member_id (FK)| |价格 | |价值支付 | ----------------- -----

membership_info 和 client_info 的值如下:

-------------------------- ------------------------ ---------------- |身份证 |姓名 |价格 | |客户 ID |会员ID |价值支付 | -------------------------- ------------------------ ---------------- | 1 |日报 | 30 | | 24 | 2 | 80 | | 2 |周刊 | 80 | | 25 | 2 | 80 | | 3 |月刊 | 100 | | 26 | 3 | 100 | -------------------------- ------------------------ ----------------

现在我面临的问题是我无法弄清楚如何查询如下所示的结果:

------------------------------------- |会员名称 |会员人数 | ------------------------------------- |周刊 | 2 | |月刊 | 1 | -------------------------------------

请帮忙!

【问题讨论】:

【参考方案1】:
select name, count(*)
from client_info c
    inner join membership_info m on c.membership_id = m.id
group by name

【讨论】:

以上是关于使用 COUNT 和 INNER JOIN 选择查询的主要内容,如果未能解决你的问题,请参考以下文章

Postgres COUNT 个带有 INNER JOIN 的列值

SQL Keep running count, after inner Join

Mysql Count with Inner join of two tables, Average Join

外连接(left join、full join、right join)与内连接(inner join)的区别

inner join(inner可省) 与 left join 之间的区别

inner join 与 left join 之间的区别