Инструмент построения запросов TDMS обеспечивает возможность создания составных выборок. Составными называются те выборки, в которых присутствует более одного поискового запроса. Потребность в создании нескольких поисковых запросов возникает в том случае, если условия поиска нельзя свести в один запрос, или если данные извлекаются из различных таблиц или других выборок. Чтобы результат использования нескольких поисковых запросов был предсказуем и определен, запросы должны быть объединены в единый результирующий запрос.
Ввод условий составной выборки производится с помощью диалога формирования составной выборки. Редактор условий составной выборки состоит из графического поля, на котором отображаются вложенные запросы и их связи; и табличного редактора, имеющего только расширенное представление с возможностью выбора колонок для вывода результатов поиска, задания порядка сортировки и включения в запрос агрегатных функций.
Составной запрос состоит из двух и более выборок:
- Главная вложенная выборка. Главная выборка размещается в графической части редактора запроса в виде отдельного окна с выделенными границами. В главной выборке аккумулируются результаты поиска, по найденным объектам главной выборки определяется объектный тип данных строки. Главная выборка может быть только одна. Главную выборку можно переназначить.
- Подчиненная вложенная выборка. Подчиненные выборки также размещаются в графической части редактора запроса и дополняют условия поиска.
- Результирующая выборка. Результирующая выборка создается в табличном редакторе составной выборки. В качестве исходного набора данных этой выборки берется список объектов или строк, аккумулированных в главной выборке. Результирующая выборка позволяет сформировать итоговый набор столбцов, задать правила сортировки строк, применить группировку и агрегатные функции.
Выборки должны быть связанны между собой. У каждой выборки должно существовать хотя бы одно отношение с другой выборкой. Правила, по которым строятся отношения выборок, описаны в главе Свойства объединения выборок.