Tsql 使用大小写计数不同的id
假设我有一个带有值的列表ID,如下所示:Tsql 使用大小写计数不同的id,tsql,Tsql,假设我有一个带有值的列表ID,如下所示: ID VALUE 1 A 1 NULL 1 B 2 NULL 3 A 我想为等于A或B(至少一个)的值计算不同的ID 答案应该是2,因为有2个ID具有A或B值 如果我进行计数(不同的情况下…我无法获得唯一的ID) 是否有其他解决方案?您应该能够筛选值A或B,然后计算列出的不同ID,如下所示: select count(distinct Id) from tbl where value in ('A','B') declare @
ID VALUE
1 A
1 NULL
1 B
2 NULL
3 A
我想为等于A或B(至少一个)的值计算不同的ID
答案应该是2,因为有2个ID具有A或B值
如果我进行计数(不同的情况下…
我无法获得唯一的ID)
是否有其他解决方案?您应该能够筛选值A或B,然后计算列出的不同ID,如下所示:
select count(distinct Id)
from tbl
where value in ('A','B')
declare @t table (id int not null,
value char(1) null);
insert into @t
values
(1,'A'),
(1,NULL),
(1,'B'),
(2,NULL),
(3,'A');
select
count(distinct id)
from @t
where value in ('A','B');
您应该能够筛选值A或B,然后计算列出的不同ID,如下所示:
declare @t table (id int not null,
value char(1) null);
insert into @t
values
(1,'A'),
(1,NULL),
(1,'B'),
(2,NULL),
(3,'A');
select
count(distinct id)
from @t
where value in ('A','B');