Sql 计算另一列不相同的不同行数
我想知道如何对NUM进行计数,其中代码是不明确的 那么计数应该是两个Sql 计算另一列不相同的不同行数,sql,sql-server,Sql,Sql Server,我想知道如何对NUM进行计数,其中代码是不明确的 那么计数应该是两个 CODE NUM T1 1001 T1 1001 T1 1001 T2 1002 T2 1002 T3 1003 T3 1003 T4 1003 T5 1004 T5 1004 T5 1004 T6 1005 T7 1005 T7 1005 试试这个: Select count(*) From ( Select num From t Group by num Having c
CODE NUM
T1 1001
T1 1001
T1 1001
T2 1002
T2 1002
T3 1003
T3 1003
T4 1003
T5 1004
T5 1004
T5 1004
T6 1005
T7 1005
T7 1005
试试这个:
Select count(*)
From (
Select num
From t
Group by num
Having count(distinct code) > 1
) t;
您的预期输出是什么?预期结果是什么..?请不要使用代码段,除非其中包含实际的代码段。还有其他设置问题格式的选项…@Ullas我要找的答案是2,我包括了我的预期结果。@GIS\u用户-如何对NUM进行计数,其中代码不明确-接受的答案如何做到这一点。帮我们大家一个忙,并在将来添加预期的输出。虽然这个代码片段是受欢迎的,可能会提供一些帮助,但它将是如何以及为什么这样解决问题的。记住,你是在将来回答读者的问题,而不仅仅是现在提问的人!请在回答中添加解释,并说明适用的限制和假设。
Try Below code :
SELECT NUM , COUNT(*)
FROM #table
GROUP BY NUM
HAVING COUNT(DISTINCT CODE) > 1
Create table #Tempt
(
CODE varchar(50),
NUM int
)
Delete From #Tempt
insert into #Tempt Values('T1',1001)
insert into #Tempt Values('T1',1001)
insert into #Tempt Values('T1',1001)
insert into #Tempt Values('T2',1002)
insert into #Tempt Values('T2',1002)
insert into #Tempt Values('T2',1002)
insert into #Tempt Values('T3',1003)
insert into #Tempt Values('T3',1003)
insert into #Tempt Values('T4',1004)
insert into #Tempt Values('T5',1005)
insert into #Tempt Values('T5',1005)
insert into #Tempt Values('T6',1006)
insert into #Tempt Values('T7',1007)
insert into #Tempt Values('T7',1007)
Select Count(*) as TotalCount From (Select Code,Num ,
(Select Count(*) From #Tempt Where code = t.code) as CountCode
from #Tempt as t) as v Where CountCode=1