不区分大小写的标签搜索

时间:2015-06-08 13:58:16

标签: neo4j cypher

为什么这段代码不起作用

MATCH (n) WHERE labels(n)=~ '(?i).*SUBSTRING.*' RETURN distinct labels(n)

类型不匹配:预期字符串但是为集合(第1行,第17列(偏移:16))

但这确实

match n-[r]-() where type(r)=~ '(?i).*SUBSTRING.*' return distinct type(r)

1 个答案:

答案 0 :(得分:4)

labels(n)返回一个集合而不是标量。 type(r)总是返回标量,因为它是单值的。

请尝试使用labels(n)[0],它应该有效。

不建议在大型数据集中对标签执行不区分大小写的子字符串匹配。