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

Необходимо в ячейку promo таблицы sales поставить 1 или 0 в зависимости от того, был ли продан товар (good_id) из магазина (store_id) в указанную дату (date_id) по промо акции (т.е. находится ли дата внутри интервала start-end).
В таблицах promoplan, promolist и promotions содержится эта информация, но вместо good_id и store_id они содержат другие имена (good_cod и store_cod), словарь к которым дан в таблицах goods и stores соответственно.
Таблицы promoplan и promolist дополняют друг друга в том смысле, что дата проведения промо (name) из таблицы promoplan указана в таблице promolist.5d10d7e7021f7171292977.jpeg
  • Вопрос задан
  • 94 просмотра
Пригласить эксперта
Ответы на вопрос 2
tsklab
@tsklab Куратор тега SQL Server
Здесь отвечаю на вопросы.
Необходимо именно в БД
CREATE QUEUE.

Необходимо в ячейку promo таблицы sales поставить 1 или 0
Ставьте во время продажи, ведь в этот момент рассчитывается цена. Все предварительные расчёты можно делать либо в хранимой процедуре (CREATE PROCEDURE), либо в триггере перед добавлением (CREATE TRIGGER INSTEAD OF INSERT)
Ответ написан
@d-stream
Готовые решения - не подаю, но...
Запутался в словесном описании, но вот канва навскидку:

update sales 
set promo=1
from sales
inner join goods on ….
inner join stores on ….
inner join promplan on …
inner join promotions on …
where sales date_id between promolist.start and promolist.end
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы