ravenDB会自动短路查询吗? 如果没有,有办法实现这一目标。
示例: 我使用全文搜索在我的数据库中搜索。但是这个搜索还有其他应该满足特定值的字段。那么在进行昂贵的全文搜索之前,我将如何优先考虑其他字段。
Atm我的查询看起来像这样:
condition1 AND condition2 AND FTS
我在.Net 4.5框架上使用Raven嵌入式客户端
答案 0 :(得分:2)
没有。 Lucene,引擎盖下的索引实现,有时会尽最大努力重新安排您的查询。但是没有可用的短路行为,也没办法实现这一点。
您认为全文搜索“昂贵”是错误的。由于要枚举的大型术语列表或加载位置数据的要求,短语搜索,有时候通配符/前缀查询的执行可能要贵一些,但RavenDB中的所有查询实际上都是Lucene查询,因此condition1
和您查询中的FTS
几乎相同。
HTH