我现在正在使用 mongodb,它肯定不适合过滤,所以我正在考虑在这种情况下使用 solr,让我好奇的是,在数据库中,如果我愿意对值进行排序或过滤,我应该添加复合索引以使过滤器更好,在solr中,我搜索了很多,有一个叫做copyField的东西,但我认为这不是我问题的答案,所以我的问题是,我应该过滤价格和城市,我应该按价格值对它们进行排序,我应该为此添加什么到我的架构中或者我应该怎么做?,我搜索了很多,但我找不到任何东西,谢谢 :)
问问题
47 次
1 回答
2
您需要在 schema.xml 中定义具有适当字段类型(字符串、浮点数)的字段
例如<field name="cities" type="string" indexed="true" stored="true"/>
,例如<field name="prices" type="float" indexed="true" stored="true"/>
如果字段有多个值,您可以将它们标记为多值。
然后您可以使用fq过滤过滤结果
例如fq=(cities:Mumbai AND prices:100)
您也可以使用价格范围。
然后您可以使用sort参数sort=prices desc
于 2013-04-19T10:30:08.267 回答