首页 > 解决方案 > MySQL 对单个字段进行多个组以生成组合

问题描述

我有一张这样的桌子

Id_Product Id_Option 团体 姓名
1 1 数量 文本1
1 2 数量 文本2
1 3 数量 文本3
1 4 尺寸 文本4
1 5 尺寸 文本5
1 6 重量 文本6

我需要找到一种方法来从组字段中找到所有可能的组合

例子

Id_Product Id_Option1 数量 Id_Option2 尺寸 Id_Option3 重量
1 1 文本1 4 文本4 6 文本6
1 1 文本1 5 文本5 6 文本6
1 2 文本1 4 文本4 6 文本6
1 2 文本1 5 文本4 6 文本6
1 3 文本1 4 文本4 6 文本6
1 3 文本1 5 文本4 6 文本6

不同 id_product 的 group 列的不同记录数可能会有所不同

到目前为止,我在 php 中使用多重查询执行此操作,但必须有一种更简洁的方法可以直接在 mysql 中执行此操作。

到目前为止做这个简短的算法

从 Nb_Variant 中,我填充了一个数组并最终获取了数据,但这需要大量的查询和内存,因为该表中有超过 10 万条记录。

任何帮助或想法将不胜感激。

标签: mysqlgroup-bycombinations

解决方案


推荐阅读