ReQL command: includes

Command syntax

sequence.includes(geometry) → sequence
geometry.includes(geometry) → bool

Description

Tests whether a geometry object is completely contained within another. When applied to a sequence of geometry objects, includes acts as a filter, returning a sequence of objects from the sequence that include the argument.

Example: Is point2 included within a 2000-meter circle around point1?

var point1 = r.point(-117.220406,32.719464);
var point2 = r.point(-117.206201,32.725186);
r.circle(point1, 2000).includes(point2).run(conn, callback);
// result returned to callback 
true

Example: Which of the locations in a list of parks include circle1?

var circle1 = r.circle([-117.220406,32.719464], 10, {unit: 'mi'});
r.table('parks')('area').includes(circle1).run(conn, callback);

The includes command cannot take advantage of a geospatial secondary index. If you’re working with large data sets, consider using an index and getIntersecting before includes to narrow down the initial result set.

Example: Rewrite the previous example with getIntersecting.

var circle1 = r.circle([-117.220406,32.719464], 10, {unit: 'mi'});
r.table('parks').getIntersecting(circle1, {index: 'area'})('area').
    includes(circle1).run(conn, callback);

© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/javascript/includes/