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
假设我在 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