求大佬一句sql怎么写,谢谢
分别有三张表 A,B,C,D
A 表有字段名称,颜色,尺寸,还有其他信息(不重要)
B 表有字段有关联 C 表的关联 ID,名称,颜色还有其他信息(不重要)
C 表有字段尺寸,关联 B 表的 ID,还有其他信息(不重要)
D 表有所需的信息
那么问题来了,以 A 表为主表 left join 该怎么写,需要查询 D 表里面的信息
select c.* from A left join b on a. 名称 = b. 名称 and a. 颜色 = b. 颜色 left join c on b.id = c. 关联 ID and a. 尺码 = c. 尺码 left join d on b. 关联 ID = d.id where ….?
因为 B 表中名称和颜色相同的有多个,所以必须关联 C 表的尺寸拿到具体 B 表中具体哪一条,然后再用 B 去查询 D
这样写貌似有问题,所以我改怎么嵌套查询
推荐文章: