繁体   English   中英

如何将 where 子句添加到右外连接联合左外连接?

[英]How can I add a where clause to a right outer join union left outer join?

我正在使用以下 SQL,并且想知道如何以及在何处放置 where 子句。 例如,我可以将所有结果带到 id=2 的地方?

SELECT * 
FROM public_tips 
LEFT OUTER JOIN likes
USING (id) 
UNION 
SELECT * 
FROM likes 
RIGHT OUTER JOIN public_tips
USING (id)

我努力了

SELECT * 
FROM public_tips WHERE id=2
LEFT OUTER JOIN likes
USING (id) 
UNION 
SELECT * 
FROM likes WHERE id=2
RIGHT OUTER JOIN public_tips
USING (id)

但我收到一个语法错误!

where子句在from子句之后, join子句是from子句的一部分:

SELECT * 
FROM public_tips
LEFT OUTER JOIN likes
USING (id) 
WHERE public_tips.id=2
UNION 
SELECT * 
FROM likes 
RIGHT OUTER JOIN public_tips
USING (id)
WHERE public_tips.id=2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM