Mysql 从两个表集中获取数据并从表A获取所有行

Mysql 从两个表集中获取数据并从表A获取所有行,mysql,sql,database,join,Mysql,Sql,Database,Join,我有两个表,我希望这些行集中在这两个表中。 表a是这样的 id a_name image category 1 name1 image1.png cate1 2 name2 image2.png cate2 3 name3 image3.png cate3 4 name4 image4.png cate3 5 name5 image5.png cate1 6 name6 image6.png cate2 7 name7 image7.png c

我有两个表,我希望这些行集中在这两个表中。 表a是这样的

id a_name image      category
1  name1  image1.png  cate1
2  name2  image2.png  cate2
3  name3  image3.png  cate3
4  name4  image4.png  cate3
5  name5  image5.png  cate1
6  name6  image6.png  cate2
7  name7  image7.png  cate3
8  name8  image8.png  cate1
和这样的表b(a_id是上面表中任意一行的id)

我希望以这样的方式连接两个表,即每当我运行查询时,它都应该返回表a与表B连接的所有行。我使用了join,但它只获取成功应用join的行。从表b中提取的行也应该是用户id。 例如: 如果iam正在搜索用户id为523的用户的数据。然后它应该输出以下内容。(id字段来自表a)


我正在使用mysql。

您似乎想要一个
左连接

select a.*, b.*
from a left join
     b
     on a.id = b.a_id and b.user_id = 523;

您似乎想要一个
左连接

select a.*, b.*
from a left join
     b
     on a.id = b.a_id and b.user_id = 523;

你必须使用外部连接

SELECT * from a LEFT OUTER JOIN b ON a.id = b.a_id AND b.user_id = 523

你必须使用外部连接

SELECT * from a LEFT OUTER JOIN b ON a.id = b.a_id AND b.user_id = 523