素材牛VIP会员
mysql 级联查询
 钱***8  分类:SQL代码  人气:718  回帖:3  发布于6年前 收藏

table A :suit
table B :suit_goods
关联条件: suit.suit_id = suit_goods.suit_id
对应关系:A => 多个B

SQL select 怎样实现上图结果??? 求大神赐教

结果:
当某条记录,关联suit_goods表,首先 这条记录保留,在下面显示另外关联数据

 标签:mysql

讨论这个帖子(3)垃圾回帖将一律封号处理……

Lv4 码徒
静***5 Linux系统工程师 6年前#1
select ...
from suit s
right join suit_goods g on s.suit_id = g.suit_id
Lv4 码徒
想***儿 技术总监 6年前#2

看你的样子,应该把 suit_goods 当作主表
select ...
from suit_goods g
left join suit s on s.suit_id = g.suit_id

Lv5 码农
lo***ge 其它 6年前#3
SELECT
    `B`.*,
    `A`.`name`
FROM
    `suit_goods` `B`
LEFT JOIN
    `suit` `A`
ON
    `A`.`suit_id` = `B`.`suit_id`;

这样,数据基本和suit_goods一致,另外附加了一列suit.name(这个因为没看到你数据库的结构,所以是随便写的),代表的是这个good属于的suit名,按照这个,字段上面可以自由发挥。

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取