使用 Cypher 将查询中的节点连接成一行以导出到 Neo4J 中的 csv
Concatenating nodes from a query into a single line for export to csv in Neo4J using Cypher
我有一个代表国际象棋锦标赛的 neo4J 图表。
说我运行这个:
MATCH (c:ChessMatch {m_id: 1"})-[:PLAYED]-(p:Player) RETURN *
这给了我下棋比赛的两位选手的结果。
图形如下所示:
属性是这样的:
|--------------|------------------|
| (ChessMatch) | |
| m_id | 1 |
| date | 1969-05-02 |
| comments | epic battle |
|--------------|------------------|
| (player) | |
| p_id | 1 |
| name | Roy Lopez |
|--------------|------------------|
| (player) | |
| p_id | 2 |
| name | Aron Nimzowitsch |
|--------------|------------------|
我想将此数据导出到 csv,如下所示:
| m_id | date | comments | p_id_A | name_A | p_id_B | name_B |
|------|------------|-------------|--------|-----------|--------|------------------|
| 1 | 1969-05-02 | epic battle | 1 | Roy Lopez | 2 | Aron Nimzowitsch |
谷歌搜索,令人惊讶的是,我没有找到任何可靠的答案。我能想到的最好的方法就是使用 py2neo
并将所有数据作为单独的表拉下来并合并到 Pandas 中,但这似乎没有吸引力。任何关于如何用 cypher 做的想法都会很有启发性。
APOC 有一个程序:
apoc.export.csv.query
检查 https://neo4j-contrib.github.io/neo4j-apoc-procedures/index32.html#_export_import 了解更多详情。请注意,您必须将以下内容添加到 neo4j.conf :
apoc.export.file.enabled=true
希望对您有所帮助。
此致,
汤姆
我有一个代表国际象棋锦标赛的 neo4J 图表。
说我运行这个:
MATCH (c:ChessMatch {m_id: 1"})-[:PLAYED]-(p:Player) RETURN *
这给了我下棋比赛的两位选手的结果。
图形如下所示:
属性是这样的:
|--------------|------------------|
| (ChessMatch) | |
| m_id | 1 |
| date | 1969-05-02 |
| comments | epic battle |
|--------------|------------------|
| (player) | |
| p_id | 1 |
| name | Roy Lopez |
|--------------|------------------|
| (player) | |
| p_id | 2 |
| name | Aron Nimzowitsch |
|--------------|------------------|
我想将此数据导出到 csv,如下所示:
| m_id | date | comments | p_id_A | name_A | p_id_B | name_B |
|------|------------|-------------|--------|-----------|--------|------------------|
| 1 | 1969-05-02 | epic battle | 1 | Roy Lopez | 2 | Aron Nimzowitsch |
谷歌搜索,令人惊讶的是,我没有找到任何可靠的答案。我能想到的最好的方法就是使用 py2neo
并将所有数据作为单独的表拉下来并合并到 Pandas 中,但这似乎没有吸引力。任何关于如何用 cypher 做的想法都会很有启发性。
APOC 有一个程序:
apoc.export.csv.query
检查 https://neo4j-contrib.github.io/neo4j-apoc-procedures/index32.html#_export_import 了解更多详情。请注意,您必须将以下内容添加到 neo4j.conf :
apoc.export.file.enabled=true
希望对您有所帮助。
此致, 汤姆