Команда ReQL: includes
Синтаксис команды
sequence.includes(geometry) → sequence geometry.includes(geometry) → bool
Описание
Проверяет, полностью ли один геометрический объект содержится в другом. При применении к последовательности геометрических объектов, includes действует как фильтр, возвращая последовательность объектов из исходной последовательности, которые включают аргумент.
Пример: Является ли точка включенной в круг радиусом 2000 метров?
Object point1 = r.point(-117.220406,32.719464);
Object point2 = r.point(-117.206201,32.725186);
r.circle(point1, 2000).includes(point2).run(conn);
// Result:
true
Пример: Какие из мест в списке парков включают заданный круг?
import com.rethinkdb.gen.ast.Circle;
Circle circle1 = r.circle(r.array(-117.220406, 32.719464), 10)
.optArg("unit", "mi");
r.table("parks").g("area").includes(circle1).run(conn);
Команда
includesне может использовать географический вторичный индекс. Если вы работаете с большими наборами данных, рассмотрите использование индекса и getIntersecting передincludesдля сужения начального набора результатов.
Пример: Перепишите предыдущий пример с использованием getIntersecting.
Circle circle1 = r.circle(r.array(-117.220406, 32.719464), 10)
.optArg("unit", "mi");
r.table("parks").getIntersecting(circle1)
.optArg("index", "area").g("area")
.includes(circle1).run(conn);
© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/java/includes/