ヘルプ!これは、私が達成する必要があることの非常に単純な a,b,c サンプルです。私は髪を引っ張ってきました。これは以前にも書いたことがありますが、今は理解できません。実際の結果と予想される結果を以下に示します。
set nocount on
declare @a table (id int, a varchar(10))
declare @b table (ref int, b varchar(10), c varchar(20))
insert into @a select 1, 'bingo'
insert into @a select 2, 'bongo'
insert into @b select 1, 'T5', 'asdfwef'
insert into @b select 1, 'T8', 'asfqwez'
insert into @b select 1, 'T6', 'qweoae'
insert into @b select 1, 'T8', 'qzoeqe'
insert into @b select 1, 'T9', 'oqeizef'
insert into @b select 2, 'T3', 'awega'
insert into @b select 2, 'T6', 'fhaeaw'
insert into @b select 2, 'T3', 'fqsegw'
select * from @a a join @b b on a.id = b.ref
-- Expected (Uniqueness is: a’s id to b’s ref and the first b value ingoring b’s c value)
----1,bingo,1,T5,asdfwef
----1,bingo,1,T8,asfqwez
----1,bingo,1,T6,qweoae
----1,bingo,1,T9,oqeizef
----2,bongo,2,T3,awega
----2,bongo,2,T6,fhaeaw
-- Actual
----1,bingo,1,T5,asdfwef
----1,bingo,1,T8,asfqwez
----1,bingo,1,T6,qweoae
----1,bingo,1,T8,qzoeqe
----1,bingo,1,T9,oqeizef
----2,bongo,2,T3,awega
----2,bongo,2,T6,fhaeaw
----2,bongo,2,T3,fqsegw