java - NEO4J 在密码查询中使用数组或集合作为参数

标签 java graph neo4j cypher

我正在尝试调用密码查询(在 java 中)传递参数来执行类似的操作:

WHERE node.property IN [{param}]

完整示例:

START person=node:persons('Name:*')
MATCH person->[:Girl]->friend
WHERE person.Name IN [{Names}] AND friend.Hair = 'Blond'
RETURN person.Name, friend.Name

对于我尝试使用以下参数:

  1. 包含字符串的集合
  2. 包含字符串的数组
  3. 分隔字符串,如“'Joe Blow', 'Blow Joe'”

我真的认为最后一个会起作用,但我认为参数被替换为单个字符串,即 ["'Joe Blow', 'Blow Joe'"] 而不是 ['Joe Blow', 'Blow Joe'] .我通过传入一个值证明了这一点,并且有效。 我尝试跟踪代码,但在 scala 中迷路了。

还有其他选择、想法吗?

干杯

最佳答案

如果去掉 IN 关键字后面的方括号,使用集合作为参数,效果会更好。

START person=node:persons('Name:*')
MATCH person->[:Girl]->friend
WHERE person.Name IN {Names} AND friend.Hair = 'Blond'
RETURN person.Name, friend.Name

关于java - NEO4J 在密码查询中使用数组或集合作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13644847/

相关文章:

java - Android Studio : How to get EditText values from Fragment 1 to Fragment 2 respectively on button clicked

java - 在 jar 中包含属性/配置文件是不好的做法吗?

分页性能

用于 csv 导入的 neo4j 密码查询

javascript - 为什么 Tooltip 不随鼠标移动?

java - Neo4j 2.3.1 服务器在保存具有多个关系的 SDN4 实体时死机

java - COMP SCI 101/JAVA 创建一个包含 1000 个随机整数的数组,然后执行频率计数并计算平均值

java - 在 Windows L&F 中将 JButton 用作 ComboBoxEditor 时如何消除间隙?

r - 镜像直方图,有代码但担心其丢弃数据?

javascript - 我可以使用哪些工具来构建钻取图?