我希望从两个表中获取ID列表,并且必须传递条件的第三个表....我已经写了一个查询但是它没有工作
SELECT u.ID,u.FIRST_NAME
FROM users u
WHERE u.ID IN(
SELECT cs.USER_ID
FROM comments cs
WHERE cs.NEWS_ID=839
GROUP BY cs.USER_ID)
AND u.ID IN(
SELECT nu.USER_ID
FROM news_user nu
WHERE nu.NEWS_ID=839
GROUP BY nu.USER_ID)
答案 0 :(得分:0)
您没有集合功能,因此请通过逐渐使用不同的
来删除该组SELECT u.ID,u.FIRST_NAME FROM users u
WHERE u.ID IN (
SELECT distinct cs.USER_ID FROM comments cs WHERE cs.NEWS_ID=839 )
AND u.ID IN(SELECT distinct nu.USER_ID FROM news_user nu WHERE nu.NEWS_ID=839 );
通过这种方式,你可以得到两个in子句的共同点。