使用内部联接时出现不明确的错误

2022-07-23 00:00:00 sql oracle11g mysql oracle

我正在尝试从DEPTS表中选择DEPTNO、DNAME,并将其与emp表连接以选择empno和ename。然后我想按部门名称、按部门排序、不按升序对它们进行分组。
当我连接这两个表时,我总是得到‘destno’是模棱两可的。但这是加入谈判桌的共同点。我的错误可能在哪里,有什么有用的建议

SELECT deptno, dname, empno, ename
FROM dept INNER JOIN emp
ON dept.deptno = emp.deptno
GROUP BY dname
ORDER BY deptno ASC; 

感谢您的有用建议。


解决方案

产生歧义来自deptno字段,该字段同时存在于deptemp表中。若要避免这种情况,请使用限定名称或别名。

SELECT D.deptno, dname, empno, ename
FROM dept D
    INNER JOIN emp E
        ON D.deptno = E.deptno
GROUP BY dname
ORDER BY D.deptno ASC; 

相关文章