У меня есть два отдельных запроса в разные БД. Это две отдельные БД на разных серверах. Последовательность действий следующая:
- Делаю запрос в первую базу с функции getOrders()
- Выбираю телефоны с результата первого запроса (телефоны не уникальные)
- Делаю запрос в другую базу используя телефоны с п.2 (второй запрос ниже)
Второй запрос (используется Knex.JS, но смысл запроса, я думаю, понятен):
const calls = await db
.select(
'id as cdr_id',
'dst as phone',
db.raw("concat(?, recordingfile) as path", [url]),
db.raw(`
json_object(
'calldate', calldate
) as context
`)
)
.from('cdr as c')
.whereIn('dst', phones)
.where('billsec', '>=', 120)
Проблема в том, что я не могу перебрать данные из какого-то запроса и перемаппить результат, потому что между ними нет ничего общего и уникального для обеих (телефоны не уникальные). В первом запросе есть уникальный
order_id, во втором
transit_id. Как можно выйти из этой ситуации? Использовать порядковый номер записей не хотелось.