2011-03-27 98 views
0

我从数据库直接导入数据到solr索引。现在我想用php-solr-client进行搜索。现在我想要搜索它:如何搜索整个solr索引?

$offset = 0; 
$limit = 10; 

$queries = array(
    'details:Server' 
); 

$response = $solr->search($query, $offset, $limit); 

现在我只能在指定字段时搜索,例如, details。有没有办法一次搜索所有字段?

回答

1

如果您省略了details:,是不是它搜索索引的所有字段?

否则,你总是可以在一个查询中合并多个领域是这样的:

details:Server OR field2:Server OR field3:Server

编辑:关于默认字段进行搜索,指定将与多个值来填充一个“虚拟”字段:

<field name="text" type="text" indexed="true" stored="false" multiValued="true"/> 

所有字段然后让copyField条目将被搜索:

<copyField source="title" dest="text"/> 
<copyField source="akatitle" dest="text"/> 
<copyField source="year" dest="text"/> 

最后,指定本场应该是默认的一个:

<defaultSearchField>text</defaultSearchField> 

这应该工作。

+0

你是什么意思省略? – 2011-03-27 14:18:58

+0

根本不使用它,只是'Server',我认为这是有效的Lucene查询语法。 – jishi 2011-03-27 14:20:04

+0

当我忘了字段名称我没有得到任何搜索结果,对我来说也很奇怪 – 2011-03-27 14:22:19