来自INNER JOIN的SQL计数

Ste*_*yne 13 sql count

如何通过分组从内部联接中选择计数?

SELECT COUNT(table1.act) FROM table1
INNER JOIN table2 ON table1.act = table2.act
GROUP BY table1.act
Run Code Online (Sandbox Code Playgroud)

这将返回table2中找到的act的计数.

添加

 SELECT table1.act, COUNT(table1.act) AS test
Run Code Online (Sandbox Code Playgroud)

返回

act     test
------- ----
17682   3
17679   3
17677   3
11636   1
11505   1
Run Code Online (Sandbox Code Playgroud)

我想收到行为总数的计数.

所以我想得到5.你能帮忙吗?

Mos*_*cho 22

您可以将该查询包装到另一个查询中:

SELECT COUNT(*) FROM (
    SELECT COUNT(table1.act) AS actCount FROM table1
    INNER JOIN table2 ON table1.act = table2.act
    GROUP BY table1.act
) t
Run Code Online (Sandbox Code Playgroud)


ing*_*ngo 7

使用计数不同

SELECT COUNT(distinct table1.act) FROM table1
INNER JOIN table2 ON table1.act = table2.act
Run Code Online (Sandbox Code Playgroud)