Для данного пользователя я хочу получить все прогоны, которые
- удовлетворяют некоторым условиям
- получать только прогоны из проектов, к которым у пользователя есть доступ
В таблице «Пользователи» у каждого пользователя есть список идентификаторов проектов, а в таблице «Запуски» у каждого прогона - идентификатор проекта.Ниже приведен запрос, который работает.Можно ли оптимизировать его с помощью concatMap?
r.table('users')
.inner_join(
r.table('runs').filter( lambda var_6: (<some_condns>),
lambda user, run: user['projects'].contains(run['project_id'])
)
.filter(lambda l: l['left']['id'] == '<user_id>').without('left')
Я думаю, что equiJoin может не работать, потому что я ищу элемент в списке в сопоставлении с равенством.