1
0
Fork 0
arangodb/Documentation/Examples/geoIndexCreateForArrayAttri...

57 lines
4.1 KiB
Plaintext

arangosh&gt; db.geo2.ensureIndex({ <span class="hljs-attr">type</span>: <span class="hljs-string">"geo"</span>, <span class="hljs-attr">fields</span>: [ <span class="hljs-string">"location.latitude"</span>, <span class="hljs-string">"location.longitude"</span> ] });
{
<span class="hljs-string">"bestIndexedLevel"</span> : <span class="hljs-number">17</span>,
<span class="hljs-string">"fields"</span> : [
<span class="hljs-string">"location.latitude"</span>,
<span class="hljs-string">"location.longitude"</span>
],
<span class="hljs-string">"geoJson"</span> : <span class="hljs-literal">false</span>,
<span class="hljs-string">"id"</span> : <span class="hljs-string">"geo2/81872"</span>,
<span class="hljs-string">"isNewlyCreated"</span> : <span class="hljs-literal">true</span>,
<span class="hljs-string">"maxNumCoverCells"</span> : <span class="hljs-number">8</span>,
<span class="hljs-string">"name"</span> : <span class="hljs-string">"idx_1646382083298295808"</span>,
<span class="hljs-string">"sparse"</span> : <span class="hljs-literal">true</span>,
<span class="hljs-string">"type"</span> : <span class="hljs-string">"geo"</span>,
<span class="hljs-string">"unique"</span> : <span class="hljs-literal">false</span>,
<span class="hljs-string">"worstIndexedLevel"</span> : <span class="hljs-number">4</span>,
<span class="hljs-string">"code"</span> : <span class="hljs-number">201</span>
}
arangosh&gt; <span class="hljs-keyword">for</span> (i = <span class="hljs-number">-90</span>; i &lt;= <span class="hljs-number">90</span>; i += <span class="hljs-number">10</span>) {
........&gt; <span class="hljs-keyword">for</span> (j = <span class="hljs-number">-180</span>; j &lt;= <span class="hljs-number">180</span>; j += <span class="hljs-number">10</span>) {
........&gt; db.geo2.save({ <span class="hljs-attr">name</span> : <span class="hljs-string">"Name/"</span> + i + <span class="hljs-string">"/"</span> + j, <span class="hljs-attr">location</span>: { <span class="hljs-attr">latitude</span> : i, <span class="hljs-attr">longitude</span> : j } });
........&gt; }
........&gt; }
arangosh&gt; db.geo2.near(<span class="hljs-number">0</span>, <span class="hljs-number">0</span>).limit(<span class="hljs-number">3</span>).toArray();
[
{
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"82578"</span>,
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"geo2/82578"</span>,
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"_ZXF6ep2---"</span>,
<span class="hljs-string">"name"</span> : <span class="hljs-string">"Name/0/0"</span>,
<span class="hljs-string">"location"</span> : {
<span class="hljs-string">"latitude"</span> : <span class="hljs-number">0</span>,
<span class="hljs-string">"longitude"</span> : <span class="hljs-number">0</span>
}
},
{
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"82652"</span>,
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"geo2/82652"</span>,
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"_ZXF6eqS--A"</span>,
<span class="hljs-string">"name"</span> : <span class="hljs-string">"Name/10/0"</span>,
<span class="hljs-string">"location"</span> : {
<span class="hljs-string">"latitude"</span> : <span class="hljs-number">10</span>,
<span class="hljs-string">"longitude"</span> : <span class="hljs-number">0</span>
}
},
{
<span class="hljs-string">"_key"</span> : <span class="hljs-string">"82580"</span>,
<span class="hljs-string">"_id"</span> : <span class="hljs-string">"geo2/82580"</span>,
<span class="hljs-string">"_rev"</span> : <span class="hljs-string">"_ZXF6ep2--A"</span>,
<span class="hljs-string">"name"</span> : <span class="hljs-string">"Name/0/10"</span>,
<span class="hljs-string">"location"</span> : {
<span class="hljs-string">"latitude"</span> : <span class="hljs-number">0</span>,
<span class="hljs-string">"longitude"</span> : <span class="hljs-number">10</span>
}
}
]