[英]is Lucene + classic query search syntax same as using AND
表单的Lucene查询
field1:+"term1" field2:+"term2"
似乎相当于
field1:"term1" OR field2:"term2"
我希望它等同于
field1:"term1" AND field2:"term2"
(即我的数据库查询1和2的特定查询返回10条记录,而查询3返回6条记录,我希望查询2只返回6条记录)
林意识到,如果没有OR或AND则默认为OR,但我认为,+意味着词有相匹配,否则什么是+什么是我的误解呢?
对我来说,那个查询看起来并不等同于其中任何一个。
field1:+"term1" field2:+"term2"
只是无效的语法,标准的QueryParser会为它发出一个ParseException
(也许你的代码是静默吞噬异常的东西?)。
它应该是:
+field1:"term1" +field2:"term2"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.