T-SQL 选择每个符合特定条件的记录

问题描述 投票:0回答:1

我正在使用下表:

CREATE TABLE [GroupTaskMembers]
(
    [GroupTaskId] [uniqueidentifier] NOT NULL,
    [MemberId] [uniqueidentifier] NOT NULL,
    [StartedAt] [datetime2](7) NULL,
    [CompletedAt] [datetime2](7) NULL
)

我需要能够选择所有成员完成任务的计数(

GroupTaskId
)(即每个
CompletedAt is not null
具有相同的
MemberId
所以如果我这样做:

GroupTaskId

我得到了至少 1 名成员完成任务的 
select GroupTaskId from GroupTaskMembers where CompletedAt is not null

列表,但我需要能够仅选择所有成员完成任务的组。

我考虑过使用递归/CTE,但由于这是非分层数据,不确定这是否适用于这种情况(或者如果适用,如何适用)。也许有自加入的东西?

sql sql-server t-sql
1个回答
0
投票

GroupTaskID

当columnA为空时,count([columnA])不会增加,但count(*)会增加

© www.soinside.com 2019 - 2024. All rights reserved.