@deam11

Как подредактировать запрос SQL?

Всем привет
Есть БД на ACCESS. Работаю с ней в основе через SQL.
Сейчас возникла потребность обработать несколько таблиц (СКЛАД и Сотрудники)

Есть 3 таблицы

1) Сотрудники
ФИО | Отдел
Сотрудник 1 | Отдел 1
Сотрудник 2 | Отдел 2
Сотрудник 3 | Отдел 3

2) Системные блоки
Модель | Номер | ФИО
МодельСБ 1 | 001 | Сотрудник 1
МодельСБ 1 | 002 | Сотрудник 2
МодельСБ 2 | 003 | Сотрудник 3

3) Мониторы
Модель | Номер | ФИО
МодельМ 1 | 001 | Сотрудник 1
МодельМ 1 | 002 | Сотрудник 1
МодельМ 1 | 003 | Сотрудник 3

На Выходе по фильтру ФИО необходимо получить таблицу

Берем фильтр по "Сотрудник 1"

Сотрудник 1 | МодельСБ 1 | 001
Сотрудник 1 | МодельМ 1 | 001
Сотрудник 1 | МодельМ 1 | 002

Сейчас вывод таким образом
(
SELECT [Сотрудники ИЭ].[ФИО], [Склад 001 Системный Блок].[Тип], [Склад 001 Системный Блок].[Инвентарный номер], [Склад 001 Системный Блок].[ФИО], [Склад 002 Монитор].[Тип], [Склад 002 Монитор].[Инв номер], [Склад 002 Монитор].[ФИО]
FROM [Сотрудники ИЭ], [Склад 001 Системный Блок], [Склад 002 Монитор]
WHERE [Сотрудники ИЭ].[ФИО]=[Склад 001 Системный Блок].[ФИО] AND [Сотрудники ИЭ].[ФИО]=[Склад 002 Монитор].[ФИО] AND [Сотрудники ИЭ].[ФИО] LIKE "*" & [Введите Сотрудника] & "*";
)
Берем фильтр по "Сотрудник 1"

Сотрудник 1 | МодельСБ 1 | 001 | Сотрудник 1 | МодельМ 1 | 001 | Сотрудник 1
Сотрудник 1 | МодельСБ 1 | 001 | Сотрудник 1 | МодельМ 1 | 002 | Сотрудник 1

Как подправить запрос

Спасибо
  • Вопрос задан
  • 333 просмотра
Решения вопроса 1
@aynur_safin
Используйте UNION
https://support.office.com/ru-ru/article/%D0%9E%D0...

SELECT [Системные блоки].[ФИО], [Системные блоки].[Модель], [Системные блоки].[Номер]
FROM [Системные блоки]
WHERE [Системные блоки].[ФИО]="Сотрудник 1"
UNION ALL
SELECT Мониторы.[ФИО], Мониторы.[Модель], Мониторы.[Номер]
FROM Мониторы
WHERE Мониторы.[ФИО]="Сотрудник 1"
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы