Sql server SQL Server中的唯一计数
更新: 我有数据,QA团队有记录,QC团队有记录。我正在尝试添加他们对每一张唱片的尝试次数。这应计入“尝试次数”列,以及每个团队(QA/QC)的记录名使用了多少次 这就是我尝试过的:Sql server SQL Server中的唯一计数,sql-server,Sql Server,更新: 我有数据,QA团队有记录,QC团队有记录。我正在尝试添加他们对每一张唱片的尝试次数。这应计入“尝试次数”列,以及每个团队(QA/QC)的记录名使用了多少次 这就是我尝试过的: with counts as ( select [GTNUM],[RecordName],[Type],[Status], COUNT(*) row_count from QATAT group by [GTNUM],[RecordName],[Type],[Status] ), result
with counts as (
select [GTNUM],[RecordName],[Type],[Status], COUNT(*) row_count
from QATAT
group by [GTNUM],[RecordName],[Type],[Status]
),
results as (
select d.[RecordName],d.[Type], counts.row_count, ROW_NUMBER() over(partition by d.[RecordName] order by d.[RecordName] ) row_num
from QATAT d
inner join counts on counts.[RecordName] = d.[RecordName]
)
select [RecordName],[Type], row_count, max(row_num) AS Attempts
from results
group by [RecordName],[Type], row_count
order by [RecordName];
它应该是这样的:
+--------+------------+------+--------+----------+
| GTNUM | RecordName | Type | Status | Attempts |
+--------+------------+------+--------+----------+
| 334455 | REC6456 | QA | Fail | 1 |
| 334455 | REC6456 | QC | Fail | 2 |
| 334455 | REC6456 | QC | Pass | 2 |
| 465456 | REC9872 | QA | Pass | 1 |
| 784158 | REC1111 | QC | Fail | 1 |
| 451248 | REC9634 | QC | Fail | 1 |
+--------+------------+------+--------+----------+
我所尝试的一切似乎都不起作用。任何帮助都将不胜感激。看起来一个简单的
小组可以解决您的问题:
SELECT
GTNUM
,RecordName
,Type
,Status
,COUNT(*) Attempts
FROM Tablename
GROUP BY
GTNUM
,RecordName
,Type
,Status
请阅读以下内容:我在顶部的信息是我运行代码后的外观,谢谢。尝试栏是我试图添加的内容,它目前不在那里,我正在尝试添加此内容。这是问题中为数不多的明确内容之一:)请尝试,如果需要,请回答任何进一步的问题。我谦虚地道歉,我现在已经全部更新了。我的糟糕,首先为这篇糟糕的帖子感到抱歉。我只是想知道我在这里说的是否有意义,或者我应该提出一个新的问题,并以不同的方式表达出来?