使用两个NOT IN子查询进行查询

时间:2015-03-20 19:23:34

标签: mysql

是否可以在两个子查询中使用两个NOT IN进行查询:

SELECT u.feedbackid
  FROM user_feedback u 
 WHERE u.feedbackid NOT IN ( SELECT feedbackid 
                               FROM user_feedback_sent) 
   AND NOT IN (SELECT feedbackid 
               FROM user_feedback_received)

查询在第二个NOT IN上抛出错误,说错误的语法。

1 个答案:

答案 0 :(得分:1)

您错过了 NOT 位于第二个子查询中的列名。这可能会按您的需要运作:

SELECT u.feedbackid
FROM   user_feedback u 
WHERE  u.feedbackid NOT IN (SELECT a.feedbackid 
                            FROM user_feedback_sent a) 
AND    u.feedbackid NOT IN (SELECT b.feedbackid 
                          FROM user_feedback_received b)

在编写SQL代码时,它始终是一个很好的实践。

希望有所帮助