You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用IN或NOT IN查询无关联员工的部门名称?

解决方案:使用NOT IN查询无关联员工的部门名称

原语句问题分析

  • 字段名错误:employee表中关联部门的字段是department_id,而非id_department
  • 未处理NULL值:employee表存在department_id为NULL的记录,当NOT IN的子查询包含NULL时,整个WHERE条件会返回UNKNOWN,导致结果为空集

正确SQL语句

SELECT name
FROM department
WHERE id NOT IN (
    SELECT DISTINCT department_id 
    FROM employee 
    WHERE department_id IS NOT NULL
);

说明

  1. 修正字段名:将子查询中的错误字段id_department改为表中实际存在的department_id
  2. 过滤NULL值:通过WHERE department_id IS NOT NULL排除无关联部门的员工记录,避免NOT IN遇到NULL引发的逻辑异常

执行该语句后,会返回预期的无关联员工的部门名称:Projects和Advertising

内容的提问来源于stack exchange,提问作者deghuy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 23:25:26