Php 使用MySQL连接

Php 使用MySQL连接,php,mysql,Php,Mysql,我有一个连接,可以从我关注的用户和朋友那里选择所有帖子 SELECT  * FROM    posts a LEFT JOIN relationships b ON a.user_id = b.user_2 WHERE   b.user_1 = $user_id AND  b.status IN (1,3,4) 我如何让这个查询同时选择a.user\u id=$user\u id(我的id)的所有帖子? 基本上,也从我这里选择所有的帖子?无需复制任何数据。我没有任何方法来测试这一点,但

我有一个连接,可以从我关注的用户和朋友那里选择所有帖子

SELECT  * 
FROM    posts a 
LEFT JOIN relationships b
ON a.user_id = b.user_2 
WHERE   b.user_1 = $user_id AND 
 b.status IN (1,3,4)
我如何让这个查询同时选择a.user\u id=$user\u id(我的id)的所有帖子?
基本上,也从我这里选择所有的帖子?无需复制任何数据。

我没有任何方法来测试这一点,但我假设以下各项将按预期工作:

SELECT  * 
FROM    posts a 
LEFT JOIN relationships b
ON a.user_id = b.user_2 
WHERE   b.user_1 = $user_id AND 
 (b.status IN (1,3,4) OR a.user_id = $user_id)

如果您基本上希望在一个表中包含两个查询的结果,请使用联合查询。您需要修复第二个查询中的WHERE子句以使其正确,但是类似的东西呢

SELECT  *
FROM    posts a
LEFT JOIN relationships b
ON a.user_id = b.user_2
WHERE   b.user_1 = $user_id AND
 b.status IN (1,3,4)
UNION DISTINCT
SELECT *
FROM    posts a
WHERE   a.user_id = $user_id (my id)
我也会质疑你使用左连接-我认为内部连接会更好

你的意思是什么:“不复制任何数据。”