SQL Query查找具有相同DEPTNO的EMPLOYEES对

时间:2015-11-04 20:25:55

标签: sql oracle select

我有一个查询,发现ENAME的{​​{1}}对具有相同的DEPTNO

SELECT DISTINCT e.ENAME as W1, m.ENAME AS W2
FROM EMP e 
INNER JOIN emp m ON e.DEPTNO = m.DEPTNO AND e.ENAME != m.ENAME --AND m.ENAME != e.ENAME
ORDER BY e.ENAME;

对不应该是相同的...... 如何摆脱像(只呈现其中一个)的对:

BLAKE <==> WORD
WORD  <==> BLAKE

1 个答案:

答案 0 :(得分:2)

不是使用!=运算符,而是可以随意决定将名字(按字典顺序排列)放在左边(或者,当然也可以放在右边。但是,让我们一起去吧离开,为了论证的缘故):

SELECT     DISTINCT e.ENAME as W1, m.ENAME AS W2
FROM       EMP e 
INNER JOIN emp m ON e.DEPTNO = m.DEPTNO AND e.ENAME < m.ENAME
ORDER BY   e.ENAME;