是否有人知道如何在T-SQL中获得此示例中的结果:
id val1 val2 1. a b 1. c d 1. b a 1. d c 1. e f 2. k m 2. m p 2. m k
id val1 val2 1. a b 1. c d 1. e f 2. k m 2. m p
a b和b仅在b中的组。 c d(d c)和k m(m k)
相同答案 0 :(得分:2)
将~.text
与自定义row_number
一起使用。
partition by
答案 1 :(得分:0)
我会把它写成:
select id, val1, val2
from t
where val1 < val2
union all
select id, val1, val2
from t
where val1 > val2 and
not exists (select 1 from t t2 where t2.id = t.id and t2.val1 = t.val2 and t2.val2 = t.val1);