![](/img/trans.png)
[英]MySQL - how do I do an outer join where either side is optional - left and right outer join
[英]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.