SELECT DISTINCT对列的值
问题描述:
A1 | A2
a | b
c | d
b | a
a | b
一个表,我要选择不同的对:
A1 | A2
a | b
c | d
我想:
select a, b from (
select a, b , a|b as ab, b|a as ba from T
)t where ab!=ba group by a, b
任何人都有一个有关我如何做到这一点的更好的想法? 谢谢
答
这将是最干净的方式,如果NULL值不参与
select distinct
least (A1,A2) as A1
,greatest (A1,A2) as A2
from t
;
+-----+-----+
| a1 | a2 |
+-----+-----+
| a | b |
| c | d |
+-----+-----+
标签的DBMS(MySQL和MS SQL Server中,ORCLE等),其中U [R使用。 –
数据示例头与您尝试的查询之间没有关联。 –