使用一条 SQL 语句的结果在另一条语句中进行计数

Posted

技术标签:

【中文标题】使用一条 SQL 语句的结果在另一条语句中进行计数【英文标题】:Use results from one SQL statement to do a count in another statement 【发布时间】:2021-11-03 22:10:57 【问题描述】:

Excel 的数据已达到极限,因此我正在尝试使用 SQL。我正在使用 SQL Server 2019 Express。

我正在尝试计算表中每位 GM 的唯一员工姓名数量。每一行员工都是员工从事的不同项目。对于下面的示例,gm1 的计数将是三个唯一员工,而不是四个,因为这是记录数。

Employee  GM
--------------
ee1       gm1
ee1       gm1
ee2       gm1
ee3       gm1
ee4       gm2
ee5       gm2
ee6       gm2
...

我正在尝试合并这两个 SELECT 语句。

SELECT COUNT(DISTINCT EeNumber) AS GMCOUNT
FROM WOWEEs
WHERE GM = '#N/A';

SELECT DISTINCT GM 
FROM WOWEEs;

结果应该是这样的

GM    Count
------------
gm1   3
gm2   3

【问题讨论】:

添加了结果集应该是什么样的。 【参考方案1】:

您需要使用group by 子句:

SELECT   gm, COUNT(DISTINCT eenumber)
FROM     wowees
GROUP BY gm

【讨论】:

哇,这正是我所需要的。太感谢了。没想到答案这么快。我已经搜索 *** 好几天了。谢谢穆雷尼克。

以上是关于使用一条 SQL 语句的结果在另一条语句中进行计数的主要内容,如果未能解决你的问题,请参考以下文章

如何用SQL语句向一个表中插入多行记录

mysql 数据操作 子查询 介绍

R语言嵌套的ifelse语距:将一条If语句放在另一条If语句中,该语句作为嵌套的If else调用。If else语句允许我们根据表达式结果(TRUE或FALSE)打印不同的语句,执行不同的语句块

PHP使用PDO进行事务处理

是否可以将 SELECT 语句中具有重复列值的记录与 SQL 中的另一条记录合并?

sql语句如何随机取一条数据