【问题标题】:Example of full-text search across multiple fields in Neo4j?Neo4j 中跨多个字段的全文搜索示例?
【发布时间】:2017-08-24 17:46:03
【问题描述】:

我见过一些简单的文本搜索示例STARTS WITHname,例如:

但我正在寻找更多类似于跨多个字段的全文搜索:titlecontent

我能看到一个如何使用 Neo4j 完成此操作的示例吗?

【问题讨论】:

    标签: neo4j


    【解决方案1】:

    您可以使用APOC Neo4j procedure library 执行此操作。假设您有节点标签BookAuthor,并且您想要跨:Book(title):Book(content):Author(name):Author(address) 进行全文查询。首先,使用apoc.index.addAllNodes 创建一个名为bookIndex 的索引,并指定要包含在索引中的标签和属性:

    CALL apoc.index.addAllNodes('bookIndex',{
      Book: ["title","content"],
      Author:  ["name","address"]
    })
    

    然后,搜索索引:

    CALL apoc.index.search('bookIndex', 'River Runs Through It')
    

    您也可以将其用于更复杂的图形查询:

    CALL apoc.index.search('bookIndex, 'River Runs Through It')
    YIELD node AS book
    MATCH (book)-[:IN_GENRE]->(g:Genre)
    RETURN g
    

    Lucene query syntax 用于进行模糊搜索、字符串的必需组件等:'Norman Maclean~''Norman~ +Maclean'

    请参阅APOC docs 了解更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-20
      • 2012-02-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多