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