Mysql多对多关系利用中间表查询

1、多对多关系,我们举个简单的例子,一个顾客可以买多件商品,同时一类商品(指多件相同的商品)也可以也可以让多个用户购买

下面是对应的表,用户表,商品表以及关系表,其中关系表中userId、metId的外键分别是userTable 的userId 、materialTable 的matId

        userTable                                                      materialTable                                       

 

                               

   materil_user 

 

如果我们要查询用户a1买了哪些商品我们可以这样

SELECT user.userName,user.userId,mat.matName,mat.matId FROM materil_user mu LEFT JOIN userTable user on 
user.userId=mu.userId LEFT JOIN materialTable mat on mat.matId=mu.matId WHERE mu.userId=1

 查询结果:


版权声明:本文为yin_xing_ye原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。