0

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

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

我希望返回结果以创建适合在 Cytoscape 中可视化的数据。它要求每个节点都有一条专用于每条边的线。输出如下所示:

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

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

4

1 回答 1

1

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

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

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

Sql 小提琴

于 2015-06-20T11:36:11.477 回答