无法根据属性数组长度正确匹配节点

时间:2018-09-22 06:34:26

标签: neo4j cypher

我有一个仅包含一个标签的节点组成的数据库。
Node的属性除其他外包含可变长度的字符串数组。

比方说,节点看起来像这样:

{
  "array": ["str1","str2"],
  "key1": "whatever",
  "key2": "dummy"
}

在大多数情况下(但并非总是如此),数组的长度为0。
我正在尝试编写一个Cypher查询,该查询将仅返回长度为非零数组的那些节点。

IMO,此类查询应如下所示:

MATCH (n:mylabel)
WHERE size(n.array)>0
RETURN n

但是,当我运行它(通过Web界面)时,数据库会返回所有节点,包括长度为零的数组。

我有一段时间怀疑我使用了不正确的size()函数。但是,当我放

MATCH (n:mylabel)
RETURN size(n.array)

系统确实返回正确的数组长度。

请告知。

0 个答案:

没有答案