Sql server 按分组的TSQL计数行
我需要分组后的行数Sql server 按分组的TSQL计数行,sql-server,tsql,Sql Server,Tsql,我需要分组后的行数 SELECT COUNT(CheckNumber) FROM myTable WHERE Status = 'Good' GROUP BY CheckNumber 结果: Row 1 = 1 Row 2 = 15 Row 3 = 5 Row 1 = 1 Row 2 = 1 Row 3 = 1 我还试着使用DISTINCT SELECT COUNT(DISTINCT CheckNumber) FROM myTable WHERE Status = 'Good' GROUP
SELECT COUNT(CheckNumber)
FROM myTable
WHERE Status = 'Good'
GROUP BY CheckNumber
结果:
Row 1 = 1
Row 2 = 15
Row 3 = 5
Row 1 = 1
Row 2 = 1
Row 3 = 1
我还试着使用DISTINCT
SELECT COUNT(DISTINCT CheckNumber)
FROM myTable
WHERE Status = 'Good'
GROUP BY CheckNumber
结果:
Row 1 = 1
Row 2 = 15
Row 3 = 5
Row 1 = 1
Row 2 = 1
Row 3 = 1
我希望结果为3如果我理解正确,您可以这样做:
SELECT COUNT(*) FROM
(
SELECT COUNT(CheckNumber)
FROM myTable
WHERE Status = 'Good'
GROUP BY CheckNumber
) as myData
根据您的要求,这将为您提供总共3个。在我看来,根据您所说的您想要的,分组方式是完全多余的。为什么不只是:
SELECT COUNT(distinct CheckNumber)
FROM myTable
WHERE Status = 'Good'
您能提供“myTable”上的数据吗?为什么您希望结果是3?计数本身告诉您什么,并且没有标识符?