简体   繁体   English

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

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

I'm using the following SQL and was wondering how and where I can put a where clause.我正在使用以下 SQL,并且想知道如何以及在何处放置 where 子句。 So that I can for example bring all the results where id=2?例如,我可以将所有结果带到 id=2 的地方?

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

I have tried我努力了

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)

but I get a syntax error!但我收到一个语法错误!

The where clause goes after the from clause, and the join clauses are part of the from clause: 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