UNION 子查询中的两个表

UNION two tables in a subquery

我正在尝试 UNION 子查询中的两个表,但显然这是不允许的?我的查询的简化版本是:

SELECT *
FROM user, organization
WHERE user.id NOT IN (
    (SELECT distinct user_id FROM web_request)
    UNION
    (SELECT distinct user_id from user_milestone)
)
AND user.organization_id = organization.id

我的问题是:解决 MySQL 这个缺点的最佳方法是什么?

SELECT u.*, o.*
FROM `user` u
INNER JOIN organization o
ON u.organization_id = o.id
WHERE u.id NOT IN(
    SELECT distinct user_id FROM web_request
    UNION
    SELECT distinct user_id from user_milestone
)

试试这个

SELECT *
FROM   USER u
JOIN   organization o
ON     u.organization_id = o.id
WHERE  u.uid NOT IN SELECT  * (
       (
            SELECT DISTINCT user_id
            FROM            web_request )
union
      (
            SELECT DISTINCT user_id
            FROM            user_milestone) ) AS t