如何使用Grails Searchable(lucene)以最有效的方式执行等效的Criteria查询

时间:2014-12-19 22:49:24

标签: grails lucene searchable

我正在搜索单个Domain类,但也试图允许对2个字符串字段进行通配符查询,我理解通配符(第一个字符)查询应该是低效的,但是如果仅针对2个字段,则可能是'不太重要。

我试图完成以下作为标准查询的内容..

MyDomain.createCriteria().list {
  and {
    notEqual('deleted',true)
    or {
      ilike('field1','%' + searchText + '%')
      ilike('field2','%' + searchText + '%')
    }
  } 
}

任何建议都非常感谢,谢谢。

1 个答案:

答案 0 :(得分:0)

lucene查询看起来像:

-deleted:true +(field1:searchText field2:searchText)