首页 > 数据库 > mysql教程 > 如何使用 COUNT(DISTINCT) 计算 SQL Server 中不同的程序名称?

如何使用 COUNT(DISTINCT) 计算 SQL Server 中不同的程序名称?

Mary-Kate Olsen
发布: 2025-01-14 18:46:44
原创
865 人浏览过

How to Count Distinct Program Names in SQL Server Using COUNT(DISTINCT)?

高效计算 SQL Server 中的唯一程序名称

确定数据集中唯一条目的数量是数据分析中的一项常见任务。 SQL Server 提供了一种使用 COUNT(DISTINCT) 函数对不同值进行计数的简单方法。这在处理大型数据集时特别有用,因为了解独特的事件至关重要。

让我们考虑一下cm_production 表,它存储有关代码部署的信息,包括票号、程序类型、程序名称和推送编号。 我们的目标是确定唯一程序名称的数量,按程序类型和推送数量分类。

最初的错误方法可能如下所示:

<code class="language-sql">DECLARE @push_number INT;
SET @push_number = [HERE_ADD_NUMBER];

SELECT DISTINCT COUNT(*) AS Count, program_type AS [Type] 
FROM cm_production 
WHERE push_number=@push_number 
GROUP BY program_type</code>
登录后复制

这个查询虽然看似正确,但实际上计算了所有程序名称,而不仅仅是唯一的程序名称。 获得正确计数的关键在于利用 COUNT(DISTINCT <expression>) 函数。 此函数专门返回给定表达式的唯一非空值的数量。

更正后的SQL查询如下:

<code class="language-sql">SELECT program_type AS [Type],
       COUNT(DISTINCT program_name) AS [Count]
FROM   cm_production
WHERE  push_number = @push_number
GROUP  BY program_type</code>
登录后复制

此精炼查询利用 COUNT(DISTINCT program_name) 来准确计算每种程序类型和指定 push_number 的不同程序名称。这提供了数据库中唯一代码部署的精确表示。

以上是如何使用 COUNT(DISTINCT) 计算 SQL Server 中不同的程序名称?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板