gpt4 book ai didi

mysql 不存在于其他表中

转载 作者:行者123 更新时间:2023-11-29 12:28:33 25 4
gpt4 key购买 nike

我的员工表是这样的

+------+------------+
| emp | emp_status |
+------+------------+
| 001 | w |
| 002 | nw |
| 003 | w |
| 004 | w |
+------+------------+

薪资表为

+------+------------+
| emp | month |
+------+------------+
| 001 | Dec2013 |
| 002 | Dec2013 |
| 003 | Dec2013 |
| 004 | Dec2013 |
| 001 | Jan2014 |
| 002 | Jan2014 |
| 003 | Jan2014 |
| 004 | Jan2014 |
| 001 | Feb2014 |
| 004 | Feb2014 |
+------+------------+

因此,对于 2014 年 2 月,我想获取未收到工资的员工

+------+------------+
| emp | emp_status |
+------+------------+
| 003 | w |
+------+------------+

我尝试过

SELECT * FROM emp WHERE NOT EXISTS (SELECT emp FROM salary where month_sal ='Feb2014')

我也想使用 emp_status(with 'w')...任何提示..

最佳答案

您缺少将 EXISTS 中的 where 子句连接到外部查询,如下所示:

SELECT * FROM emp 
WHERE NOT EXISTS
(
SELECT NULL
FROM salary
where salary.month_sal ='Feb2014'
AND salary.emp=emp.emp
)
AND emp.emp_status='w'

您开始编写的内容看起来像 IN。您也可以这样做:

SELECT * FROM emp 
WHERE NOT emp.emp IN
(
SELECT salary.emp
FROM salary
where salary.month_sal ='Feb2014'
)
AND emp.emp_status='w'

关于mysql 不存在于其他表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27937691/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com