Spec-Zone.ru › RethinkDB java

Команда ReQL: outerJoin

Синтаксис команды

sequence.outerJoin(otherSequence, predicate_function) → stream
array.outerJoin(otherSequence, predicate_function) → array

Описание

Возвращает левое внешнее соединение двух последовательностей. Возвращаемая последовательность представляет собой объединение левой и правой последовательностей: все документы в левой последовательности будут возвращены, каждый сопоставленный с документом в правой последовательности, если он удовлетворяет условию предиката. В большинстве случаев вы захотите последовать за соединением zip для объединения левых и правых результатов.

Обратите внимание, что outerJoin медленнее и значительно менее эффективен, чем использование concatMap с getAll. Следует избегать использования outerJoin в командах, когда это возможно.

Пример: Вернуть список всех героев Marvel, сопоставленных с любыми героями DC, которые могли бы победить их в бою.

r.table("marvel").outerJoin(r.table("dc"),
    (marvel_row, dc_row) -> marvel_row.g("strength").lt(dc_row.g("strength"))
).zip().run(conn);

(Сравните это с innerJoin с теми же входными данными и предикатом, который вернул бы список только тех сопоставлений, в которых герой DC имеет более высокую силу.)

Связанные команды

  • innerJoin
  • eqJoin
  • zip

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API