У меня есть две таблицы. на левой стороне у меня есть вторичный индекс под названием tour_id
соответствие id
на правой стороне. мой eqJoin
запрос работает нормально и даст мне в цикле все объединенные таблицы
r\table('left')->eqJoin('tour_id', r\table('right'))->zip()->run($conn);
Но я не могу понять, как получить объединение для одного конкретного id
, eqJoin
должен быть как getAll
, но если я заменю tour_id
с фактическим id
у меня просто пустой результат. Я использую php-rql и не могу найти подсказки о том, как это сделать.
Похоже, вы пытаетесь сделать это:
r\table('left')->getAll(left_id)->eqJoin('tour_id', r\table('right'))
Или, может быть, что-то вроде этого:
r\table('left')->filter({'tour_id' => right_id})->eqJoin('tour_id', r\table('right'))
eqJoin
а также getAll
разные операции:
getAll
извлекает документы по точному совпадению по проиндексированному значению
eqJoin
это сахар для map
на одном столе, который делает get
на другом столе.
Других решений пока нет …