不确定“不存在”如何工作

时间:2019-04-20 23:39:47

标签: sql oracle

目前这只是家庭作业,但我无法为该问题编写SELECT语句:

  

生成一个显示部门名称,部门描述,   所有部门的员工姓氏和员工姓氏,   包括尚未分配员工的人员​​。排序方式   部门名称。

我相信我的SELECT,FROM,WHERE和ORDER BY无效,但是NOT EXISTS是我苦苦挣扎的地方。

这是桌子:

the table

SELECT deptName, deptDesc, empFirstName, empLastName
FROM department, employee
WHERE department.deptID=employee.deptID
AND NOT EXISTS (
    SELECT deptName, deptDesc
    FROM 
ORDER BY deptName ;

目前,我只是试图包括那些尚未分配员工的人。

1 个答案:

答案 0 :(得分:2)

我相信您正在寻找的是LEFT JOIN:https://www.w3schools.com/sql/sql_join_left.asp

您希望包括部门中的所有内容,以及与员工匹配的所有内容,而不仅仅是两者的交集。

如果该内部查询产生的结果至少包含一行,则NOT EXISTS只会返回布尔值true或false。我认为那不是你想要的。

for i in reversed(range(1, len(x))): TypeError: object of type 'MapDataset' has no len()