Solr - 相当于SQL中的LIKE

Cia*_*her 1 lucene coldfusion solr full-text-search

我一直在玩数据库结果集中通过ColdFusion 9在Apache Solr中创建一个集合.我想在SQL中进行如下搜索:

select * from events where eventName like 'Meet%'
Run Code Online (Sandbox Code Playgroud)

在SQL中,这将部分匹配单词并返回行.我试图使用Solr集合和<cfsearch>CF这样做:

<cfsearch collection="#myCollection#" criteria="Meet*" name="results" />
Run Code Online (Sandbox Code Playgroud)

但是,除非我指定了完整的单词,否则我不会收回数据,尽管使用了通配符.该文档称通配符不是在搜索的开始允许的,但它并没有说这是不是在允许的结束.事实上对我来说它在任何地方都无效!

<!--- No results -->
<cfsearch collection="#myCollection#" criteria="Meet*" name="results" /> 

<!--- No results -->
<cfsearch collection="#myCollection#" criteria="Meet*g" name="results" />

<!--- No results -->
<cfsearch collection="#myCollection#" criteria="Meeti?g" name="results" />

<!--- Yes - results! -->
<cfsearch collection="#myCollection#" criteria="Meeting" name="results" />
Run Code Online (Sandbox Code Playgroud)

有没有人使用通配符Solr搜索<cfsearch>?如果是这样,你能指出我正确的方向吗?

CfS*_*ity 5

尝试"见面*"而不是"见面*".我发现通配符只适用于小写字符串,因此每当搜索查询包含星号时,我将LCase()字符串传递给Solr.