求教一个装盒子的问题(商品装进小盒子,小盒子装进大箱子),只有商品对应小盒子,商品对应大箱子的信息,需要得出对应的小盒子与大箱子的对应关系,默认按ID顺序装进大箱子
表SMALL_BOX小盒子
商品ID 小盒子ID 数量
A S1 10
A S2 10
A S3 7
B S4 20
C S5 30
C S6 7
表BIG_BOX大箱子
商品ID 大箱子ID 数量
A B1 20
A B2 7
B B3 20
C B4 37
表SMALL_BIG_RATE产品小盒子和大箱子的比例
商品ID 大箱子能装商品和小盒子能装的比例
A 2
B 3
C 3
需要的查询sql结果为
商品ID 小盒子ID 大箱子ID
A S1 B1
A S2 B1
A S3 B2
B S4 B3
C S5 B4
C S6 B4
------解决方案--------------------
没有环境,不能给你完美答案。
但是给你个思路,你看看行不行
先根据SMALL_BIG_RATE表的【 大箱子能装商品和小盒子能装的比例】对每个商品的大箱子进行笛卡尔积
然后小箱子表LEFT JOIN 乘积后的大箱子表。再用<>NULL来过滤