MySQL:从包含分隔数据的列创建的输出行

MySQL: Output rows created from columns containing delimited data

假设我在 MySQL 中有以下数据:

**bond** | **node** | **edges**
foo      |    1     |    2,3
hak      |    2     |    1
wat      |    3     |    1,2

我希望 return 结果创建适合在 Cytoscape 中可视化的数据。它要求每个节点都有一条专用于每条边的线。输出看起来像:

**bond** | **node** | **edges**
foo      |    1     |    2
foo      |    1     |    3
hak      |    2     |    1
wat      |    3     |    1
wat      |    3     |    2

我认为 PIVOT 运算符可能会以某种方式工作,但我没有运气。

假设你有一个边缘主控table,其中存储了所有可能的边缘值。

如果我的假设是错误的,我的答案将不成立

SELECT bond, node, edgemaster.edgeid FROM mytable
JOIN edgemaster ON FIND_IN_SET(edgemaster.edgeid, mytable.edges)
ORDER BY bond, node, edgemaster.edgeid

Sql Fiddle