mysql - 在多个 SQL 语句中使用 Count() 并使用 join 连接它们

标签 mysql sql sql-server count union

我有以下 3 个 SQL 查询,如下所示:

1- 从 ShotTarget 组中按球员选择球员

2- SELECT COUNT( Target ) FROM ShotTarget Where Target = 'OnTarget' 按玩家分组

3- 从 ShotTarget Group By Player 中选择 COUNT( TARGET )

如何将这 3 个查询放在一起?我已经尝试过 union 和 union all 但我无法让它工作。

帮助将不胜感激。

最佳答案

这就是 select 子句的用途。你可以在那里有多个列。

SELECT Player, COUNT( TARGET ),
       SUM(case when Target = 'OnTarget' then 1 else 0 end)
FROM ShotTarget
Group By Player;

棘手的是 Target = 'OnTarget'。这使用条件聚合(聚合函数中的 case 语句)。

关于mysql - 在多个 SQL 语句中使用 Count() 并使用 join 连接它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21760949/

相关文章:

mysql - 从arduino获取数据并通过ethienet存储到数据库中

mysql - MySQL 中何时使用单引号、双引号和反引号

SQL 三表连接

sql-server - 虚拟 SSIS 任务是个好主意吗

sql - 仅替换 SQL 中的部分字符串

sql - T-SQL : How to deny update on one column of a table via trigger?

php - 如何为树结构开发数据库模式(有向无环图)

Mysql:if else从一列到另一列

sql - 获取插入/修改行的 DATETIME

sql - Postgresql - 列数未知的数据透视表