我有两个db表city和provider where。
现在我想做一个300公里半径的搜索说来自城市Ex:班加罗尔以获得提供商的数量> 100(表示provider.city_name = city.name)。
我正在进行分面搜索
solrQuery.setFacet(true);
solrQuery.addFacetField('city');
solrQuery.setQueryType("geo")
solrQuery.setParam("lat", city.latitude.toString())
solrQuery.setParam("long", city.longitude.toString())
Double distanceInMiles = 500.0 * 0.621371192;
solrQuery.setParam("radius", distanceInMiles.toString());
def server = solrService.getServer('provider')
我将再次获得所有城市和foreach(在java)城市我正在运行检查天气在该城市有超过100个提供商。有什么更好的方法在solr中做到这一点????
答案 0 :(得分:0)
您可以使用.setFacetMinCount(100)
仅获取计数超过100的方面值。这意味着您的方面值仅包含至少有100个提供商的城市。