SQL中COUNT(distinct no)的问题

2024-11-29 09:51:47
推荐回答(4个)
回答1:

楼主,你好!我在数据库中已经帮你测试过了,结果能通过,你看看

create table #TB(
    ID int,
    ZD int
)
--向临时表插入演示数据
insert into #TB values(1,1)
insert into #TB values(1,1)
insert into #TB values(1,2)
insert into #TB values(2,1)
insert into #TB values(2,2)
--按要求取数,
--首先,把int类型的值转化成字符串类型,然后值连接起来;
--然后,把重复的值给distinct掉;
--最后,再把结果count出来
select count(distinct (cast(ID as CHAR(1)) + cast(ZD as CHAR(1))))
from #TB
--删除临时表
drop table #TB

回答2:

distinct 去除重复的,zd 1 2重复,去掉正好是2条,肯定返回2 ,你奥返回4说一下要求,很多能返回4,你不说不能给你判定。

回答3:

select sum(zd) as abc from tb where zd=2

回答4:

变通一下就可以了
select count(distinct convert(nvarchar(20),ID)+','+convert(nvarchar(20),ZD)) from TB