0

我正在将 Lucene 与 Alfresco 一起使用。这是我的查询:

( 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))

你能帮我么?

谢谢

4

2 回答 2

2

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

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

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

于 2009-09-23T13:20:05.817 回答
0

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

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

于 2018-01-25T07:32:32.107 回答