私はsolrで空間を使用し、その場でdist:geodist()パラメータを生成しています。私は上記のクエリを距離すなわちSolrで距離の範囲でグループ化する方法
?group.query=dist[0 To 3]&group.query[3 TO 5]
の範囲によってIグループの結果試すことができた場合はどのようにそれは私が何の「DIST」フィールドが存在しないように指示します。私がgeodist()で試してみると、それは解析できないと私に伝えます。
私はsolrで空間を使用し、その場でdist:geodist()パラメータを生成しています。私は上記のクエリを距離すなわちSolrで距離の範囲でグループ化する方法
?group.query=dist[0 To 3]&group.query[3 TO 5]
の範囲によってIグループの結果試すことができた場合はどのようにそれは私が何の「DIST」フィールドが存在しないように指示します。私がgeodist()で試してみると、それは解析できないと私に伝えます。
あなたはfunction range queriesを使用することができます:...&group.query={!frange l=0 u=3}geodist()...
。
あなたは結果のグループに(範囲[0 To 3] and ]3 TO 5]
、または[0 To 3[ and [3 TO 5]
と同等のもの)を有する重複を防ぐためのパラメータでincl=false
またはincu=false
を使用する必要があります。あなたはまた、同様に、グループ関数としてgeodist()
を使用することができます
q=*:*&spatial=true&pt=0.0,0.0&sfield=geofield&group=true&group.query={!frange l=0 u=3}geodist()&group.query={!frange l=3 u=5 incl=false}geodist()
:group.func=geodist(geofield,0.0,0.0)
が、それは(範囲)がより困難粒度を制御するために、このようになるだろう
クエリは次のようになります。
「dist:geodist()paramaterをオンザフライで生成する」とはどういう意味ですか?どのようにそれを生成するのですか? – EricLavault