Skip to main content
 首页 » 编程设计

python之使用 python 嵌入式绑定(bind)查询 neo4j 索引中的所有字段

2025年05月04日9fff_TT

我正在尝试跨所有字段查询节点索引。这是我认为可行的方法:

idx = db.node.indexes.get('myindex') 
idx.query('*:search_query') 

但这不会返回任何结果。然而,这有效

idx = db.node.indexes.get('myindex') 
idx.query('*:*') 

并且它按预期返回索引中的所有节点。我假设第一个版本应该可以工作是错误的吗?

请您参考如下方法:

我不希望第一个版本有效,而对第二个版本却很惊讶。 Neo4j 使用 this Lucene syntax 解析这些查询- 我没有看到任何关于通配符字段的信息。相反,删除该字段以针对隐含的“所有字段”进行搜索。

插件 - 构建 Lucene 查询的更简单方法(与 Neo4j 兼容),查看 lucene-querybuilder .它被 neo4j-rest-client 使用和 neo4django .

编辑:

我似乎找不到对我认为存在的“所有字段”隐式搜索的支持 - 抱歉!我想您只需要在查询中手动包含所有字段(例如,“name:falmarri OR userType:falmarri”)。