[英]getting datafrom two tables collectively and get all the rows from table A
我有两个表,我希望从这些表中将这些行集中起来。 表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)
id user_id a_id email amount code active
1 123 2 s@s 23 23ke 1
2 542 1 s@s 23 23ke 1
3 523 2 s@s 23 23ke 1
4 423 6 s@s 23 23ke 1
5 103 5 s@s 23 23ke 1
6 523 5 s@s 23 23ke 0
我想以这样一种方式联接两个表,以便每当我运行查询时,它都应返回表A与表B联接的所有行。我使用了联接,但它仅获得成功应用联接的行。 从表b中提取的行也应使用user_id。 例如:如果iam搜索user_id = 523的用户数据。 那么它应该输出以下内容。 (id字段来自表a)
id a_name image user_id email amount code active
1 name1 image1.png - - - - -
2 name2 image2.png 523 s@s s@s 23KE 1
3 name3 image3.png - - - - -
4 name4 image4.png - - - - -
5 name5 image5.png 523 s@s 23 23KE 0
6 name6 image6.png - - - - -
7 name7 image7.png - - - - -
8 name8 image8.png - - - - -
我正在使用mysql。
您必须使用外部联接,
SELECT * from a LEFT OUTER JOIN b ON a.id = b.a_id AND b.user_id = 523
您似乎想要left join
select a.*, b.*
from a left join
b
on a.id = b.a_id and b.user_id = 523;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.