SQL查询,NOT IN返回错误

马鲁杜克

大家好,我有一个小问题。所以我得到了2张表robot_calls和发票。我正在尝试获取不在robot_calls.invoice_id的ID中的发票ID。我得到一个错误Unknown column in 'where clause

SELECT * FROM invoices where `desc`='Invoice from mr. Robot' NOT IN
(SELECT * FROM invoices where robot_calls.invoice_id=invoices.id)";

我不是sql专家,有人可以请问我吗?

干杯。

谢尔盖·卡里尼琴科(Sergey Kalinichenko)

您需要idrobot_calls表中选择一个来执行此查询:WHERE invoice_id NOT IN (SELECT invoice_id FROM robot_calls)

此查询的另一种替代方法是使用存在量词:

SELECT *
FROM invoices iv
WHERE NOT EXISTS (SELECT * FROM robot_calls rc WHERE rc.invoice_id=iv.invoice_id)
  AND iv.desc='Invoice from mr. Robot'

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章