sequence.contains([value | predicate_function, ...]) → bool
r.contains(sequence, [value | predicate_function, ...]) → bool
When called with values, returns true
if a sequence contains all the
specified values. When called with predicate functions, returns true
if for each predicate there exists at least one element of the stream
where that predicate returns true
.
Values and predicates may be mixed freely in the argument list.
Example: Has Iron Man ever fought Superman?
r.table('marvel').get('ironman')[:opponents].contains('superman').run(conn)
Example: Has Iron Man ever defeated Superman in battle?
r.table('marvel').get('ironman')[:battles].contains{|battle|
battle[:winner].eq('ironman') & battle[:loser].eq('superman')
}.run(conn)
Example: Return all heroes who have fought both Loki and the Hulk.
r.table('marvel').filter{ |hero|
hero[:opponents].contains('loki', 'hulk')
}.run(conn)
Example: Use contains
with a predicate function to simulate an or
. Return the Marvel superheroes who live in Detroit, Chicago or Hoboken.
r.table('marvel').filter { |hero|
r.expr(['Detroit', 'Chicago', 'Hoboken']).contains(hero['city'])
}.run(conn)
Couldn't find what you were looking for?
Contribute: edit this page or open an issue