如何在select语句中获取第一列的计数
Posted
技术标签:
【中文标题】如何在select语句中获取第一列的计数【英文标题】:How to get count of first column in select statement 【发布时间】:2015-03-05 04:54:21 【问题描述】:我正在尝试将count (*)
替换为count(column_name)
对于一些select
语句,我能够获得column_name
,但很少有非常复杂的语句,我无法找到select
语句返回的列。
当我找不到column name
时,有没有办法可以得到count(first_column_name)
?
【问题讨论】:
您可以简单地将count(*)
更改为count(1)
,这也适用于您
为什么要把count(*)
换成count(column_name)
? column_name
可以为空吗?否则与*
没有区别。
@TimSchmelter count(coumn_name) 和 count(1) 之间没有什么不同吗?我认为 count(1) 将返回完全相同的输出并提高性能forums.asp.net/t/… 抱歉,我是 sql 新手
【参考方案1】:
如前所述,只要 n = 数据集中列的位置,COUNT(Column_Name)
就可以替换为 COUNT(n)
。
例如假设有表MyTable
具有以下物理结构
EmpID|Name|Location
如果您想获得EmpID
的计数,请使用查询
SELECT COUNT(1) FROM MyTable
而不是
SELECT COUNT(EmpID) FROM MyTable
如果您想要计算位置,请使用查询,
SELECT COUNT(3) FROM MyTable
等等。
对于数据集SELECT Location, EmpID, Name FROM MyTable
,要获取姓名的数量,需要使用查询
SELECT COUNT(3) FROM (SELECT Location, EmpID, Name FROM MyTable)A
【讨论】:
以上是关于如何在select语句中获取第一列的计数的主要内容,如果未能解决你的问题,请参考以下文章