У меня есть родительская строка и дочерние строки в 7-10 отдельных таблицах, а уникальный ключ связывает строки в дочерних таблицах с родительской строкой.Для функции поиска мне нужно получить родительский и все соответствующие дочерние строки на основе запроса к данным в родительской таблице.Есть до 5000 соответствующих родительских строк.В настоящее время мы перезапускаем запрос к каждой из дочерних таблиц, например:
select data from child
where key in (select key from parent where search_criteria)
Это выглядит довольно не элегантно, особенно когда мы продолжаем добавлять дополнительные дочерние таблицы.Есть ли лучший способ сделать это в DB2?
Некоторые из моих мыслей:
- Будет ли DB2 повторно использовать результаты этого выбора?А как насчет большого количества запросов?
- Я знаю ключи после родительского запроса, так что я могу передать их в SQL, но этот SQL сойдет с ума с 5000 ключами и предположительно превзойдет SQLlimit.
- Стоит ли хранить ключи как временную таблицу или установка / разборка будет чрезмерной?