У меня есть таблица данных "datatable", которая обновляется ежедневно.
DATATABLE
Shop Manager Sales Date
1 A 100 20181217
1 B 120 20181217
2 C 110 20181217
2 D 105 20181217
1 A 100 20181218
Данные периодически очищаются и помещаются в «очищаемые» с теми же столбцами.Я пытаюсь создать таблицу представления, которая объединяет эти две таблицы и дает мне очищенные данные, когда они доступны, в противном случае не очищенные.
CLEANTABLE
Shop Manager Sales Date
1 A 101 20181217
1 B 121 20181217
Я могу сделать это с помощью union for 1 shop & 1 manager.
select * from cleantable where Shop = 1 and Manager = 'A'
union
select * from datatable where Shop = 1 and Manager = 'A' where Date >
(select max(Date) from cleantable where Shop = 1 and Manager = 'A')
Даты уборки для каждого магазина и менеджера разные.
Существует ли простой способ написать запрос, который позаботится обо всех комбинациях магазина / менеджера.
В идеале он также должен работать, если в конкретной комбинации магазина / менеджера нет чистых данных.
DESIRED OUTPUT
Shop Manager Sales Date
1 A 101 20181217
1 B 121 20181217
2 C 110 20181217
2 D 105 20181217
1 A 100 20181218