0

假设我有以下数据:

id1   id2    data
----------------------
7     8      test1
7     8      test2
8     7      test1
8     7      test2

对于我的需要 id1 和 id2 可以转置,所以这本质上是重复数据。如何仅选择 id1/id2 及其所有唯一值的一种组合data?所以期望的输出是:

7   8   test1
7   8   test2

或者

8   7   test1
8   7   test2

真的无所谓。

4

2 回答 2

4

如果真的所有记录都以这种方式复制并且id1!=id2,这可以工作吗?

select distinct id1, id2, data from test where id1 < id2
于 2012-07-21T20:54:07.100 回答
0

如果您的记录不重复,您可以执行以下操作:

select distinct (case when id1 < id2 then id1 else id2 end) as idlow,
       (case when id1 < id2 then id2 else id1 end) as idhigh,
       data
from table t
于 2012-07-21T21:59:04.227 回答