cypher - 密码查询和AgensGraph
问题描述
以下查询仅返回 vlabel。
它也应该返回elabls吗?
match
return distinct labels;
解决方案
根据“列表函数”部分中的文档,该labels()
函数只会返回 vlabels。
labels()
返回作为参数传递的顶点的 vlabel。将参数传递给标签函数时应该小心;当您使用 MATCH 子句找到与模式匹配的顶点、分配变量并将该变量作为参数传递时,顶点本身不能作为参数传递给标签函数,而必须始终作为变量传递。
如果您想要边缘/关系,文档说明使用该relationships()
功能:
relationships()
返回作为参数传递的路径中存在的边。将参数传递给关系函数时应该小心;当您使用 MATCH 子句找到与模式匹配的路径、分配变量并将该变量作为参数传递时,路径本身不能作为参数传递给关系函数,但必须始终作为变量传递。与计数功能一起使用时,可以找到路径中的边数。
因此,要同时列出 vlabels 和 elabels,您需要类似以下查询(注意我们分配了p
传递给relationships
函数的结果路径):
MATCH p=(n)-[r]->(m)
RETURN DISTINCT labels(n), relationships(p), labels(m);
-- Example results
labels | relationships | labels
----------+-------------------------------------------+----------
["part"] | [used_by[19.3][18.4,18.5]{"quantity": 1}] | ["part"]
["part"] | [used_by[19.4][18.5,18.6]{"quantity": 2}] | ["part"]
["part"] | [used_by[19.5][18.4,18.7]{"quantity": 1}] | ["part"]
(3 rows)
推荐阅读
- mysql - 如何从同一服务器上其他项目中的选择表单更改其他项目中的变量值?
- iframe - 如何单击跨域 iframe 中的元素?
- python - 如何将 RaggedTensor 与 tf.data API 一起使用
- javascript - 如何使用 querySelector() 在 javascript 中查找唯一的类 div id
- android - 将数据从活动发送到片段的最佳实践
- mysql - 选择以纯文本形式存储数据的日期
- javascript - 使用两个值作为一个值的键
- html - 为什么这个 html 表格会在桌面上响应,而不是在移动设备上?
- docker - 在 dockerfile 中运行 bash 文件
- angular - CI 'ng build' 找不到打字稿文件,而本地构建可以