【问题标题】:lucene query issuelucene查询问题
【发布时间】:2009-09-16 07:19:05
【问题描述】:

我在 Alfresco 中使用 Lucene。这是我的查询:

( TYPE:"{com.company.customised.content.model}test" && (@\{com.company.customised.content.model\}testNo:111 && (@\{com.company.customised.content.model \}技能:或))

我必须搜索具有价值"or" 的属性技能的文档。上面的查询没有给出任何结果(我无法解析查询)。

如果我使用查询直到 testNo(忽略 skill),我会得到正确的结果:

( TYPE:"{com.company.customised.content.model}test" && (@\{com.company.customised.content.model\}testNo:111))

你能帮帮我吗?

谢谢

【问题讨论】:

    标签: lucene alfresco


    【解决方案1】:

    不幸的是,"or" 是 Lucene 中的保留关键字。因此,Lucene 无法正确解释您的查询,因为 Lucene 认为您指的是OR boolean operator。您可能想尝试用双引号将or 括起来:

    ( TYPE:"{com.company.customised.content.model}test" && (@\{com.company.customised.content.model\}testNo:111 && (@\{com.company.customised.content.model \}技能:“或”))

    我不熟悉 Alfresco,所以您可能无法做到这一点。

    【讨论】:

      【解决方案2】:

      是的,或者是 lucene 中的保留关键字,但是如果您尝试通过类型为 number 的属性进行查询,那么您可以直接给出您的值,否则如果类型为 d:text 或 string,那么您必须在双引号 " " .

      ( TYPE:"{com.company.customised.content.model}test" && (@{com.company.customised.content.model}testNo:111 && (@{com.company.customised.content.model }技能:“或”))

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-21
        • 2010-11-26
        • 1970-01-01
        • 1970-01-01
        • 2010-11-13
        • 1970-01-01
        相关资源
        最近更新 更多