Neo4j Cypher查询以获取具有(空)属性的节点

3
我想知道是否有一种方法可以获取一个具有(空)属性的neo4j节点。当我创建节点并在单独的查询中更新数据时,我将其定义为空数组。现在我正在寻找一种获取从未更新的节点的方法。当数组中没有值时,neo4j会自动将属性设置为(空)。有没有一种查询这些节点的方法?由于该属性存在,我无法使用 IS NULL WHERE HAS NOT 查询。谢谢 编辑 以下是我要抓取其中一个节点的属性示例。剧集属性列为(空)
thumbnail:  http://is1.mzstatic.com/image/thumb/Music6/v4/0b/cf/e8/0bcfe8a9-79d4-76c1-645d-5f9b8bb56435/source/100x100bb.jpg
feedUrl:    http://www.iwantspace.com/publicbriefings/?feed=podcast&cat=6
name:   The Audio Collection – SPACE – Public Briefings
episodes:   (empty)
url:    https://itunes.apple.com/us/podcast/audio-collection-space-public/id367750633?mt=2&uo=4

也许该值不为空,而是字符串“(empty)”? - cybersam
2个回答

3

你在节点上存储了一个空数组作为属性?你尝试过匹配具有该属性的空数组的节点吗?

例如:

// Create a node with empty array for property names
CREATE (n:Person) SET n.names = []

MATCH (n:Person) WHERE n.names = [] RETURN n
// Returns the node previously created

这里有一个演示Neo4j的控制台。


赶我之前回答了,我正要写完全相同的答案。 - Max Rasguido
我尝试了那个查询,但节点上的属性未显示为数组。它显示为_(空)_。我已经编辑了我的问题,并提供了一个节点的示例。谢谢。 - Joshua Paul Huang

0

这将获取没有属性“episodes”的节点

MATCH (n) WHERE NOT HAS(n.episodes) RETURN n;

有什么反对剧集本身成为节点的观点吗?


2
has is no longer present in Neo4j, now it is replaced with exists - Vladimir Salin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接