2013-12-19 6 views
0

각 행마다 해당 테이블이 있습니다.두 개의 열 중 하나만 조합을 선택하십시오.

┏━━━━━━━━━━┳━━━━━━━━━━┓ 
┃ Column 1 ┃ Column 2 ┃ 
┣━━━━━━━━━━╋━━━━━━━━━━┫ 
┃ A  ┃ B  ┃ 
┗━━━━━━━━━━┻━━━━━━━━━━┛ 

무엇 이러한 문은 같을 것이다 : 나는 하나 개의 조합으로 원하는

┏━━━━━━━━━━┳━━━━━━━━━━┓ 
┃ Column 1 ┃ Column 2 ┃ 
┣━━━━━━━━━━╋━━━━━━━━━━┫ 
┃ A  ┃ B  ┃ 
┣━━━━━━━━━━╋━━━━━━━━━━┫ 
┃ B  ┃ A  ┃ 
┗━━━━━━━━━━┻━━━━━━━━━━┛ 

: 예를 들면?

답변

3

여기 하나의 방법입니다

select * 
from t 
where column1 < column2; 

모든쌍 표에 정말 있다고 가정 (또는 각 쌍의 첫 번째 테이블에 적어도).

select least(column1, column2) as column1, greatest(column1, column2) as column2 
from t 
group by least(column1, column2), greatest(column1, column2); 

이 몇 쌍 절반 만이 테이블에있는 경우에도 작동합니다

은 또는, 여기에 또 다른 방법입니다.

관련 문제