Как я могу использовать значение, возвращенное из одного набора данных, для построения запроса для другого набора данных в SSRS?
Я использую SQL Server Report Builder 3.0 для создания отчета.
У меня есть две таблицы, и я хочу найти значение в одной таблице, а затем использовать его для выбора значения из второй таблицы. Пример следующий:
Таблица: Персонал
| идентификатор_персонала | Фамилия |
| -------- | ------- |
| 1 | Смит |
| 2 | Джонс |
Таблица: Курсы
| Учитель | Курс |
| -------- | ------- |
| 1 | французский |
| 2 | немецкий |
Набор данных 1: ВЫБЕРИТЕ Staff_id ИЗ персонала, ГДЕ фамилия ='Смит'
Набор данных 2: ВЫБЕРИТЕ курс ИЗ курсов, ГДЕ преподаватель = {staff_id из набора данных 1}
Но я не могу понять, как передать значение из Dataset1 в запрос в Dataset2.
Я попытался получить значение в переменной с именем Teacher_id, используя поиск по другому набору данных, а затем запрос для Dataset2 становится
ВЫБЕРИТЕ курс ИЗ курсов ГДЕ преподаватель = @teacher_id
но я получаю ошибку
Выражение, используемое для вычисляемого поля «teacher_id», включает агрегатную функцию, RowNumber, RunningValue, Назад или функцию поиска. Функции Aggregate, RowNumber, RunningValue, previous и поиска нельзя использовать в выражениях вычисляемых полей.
Можно ли сделать то, что мне нужно?
Большое спасибо
Изменить: извинения. Кажется, я не могу правильно отформатировать таблицы, но они всего лишь 2 столбца на 2 строки, поэтому их легко понять.