Как использовать SQL Database Mail для отправки электронной почты различным получателям для каждого контракта, истекающего в тот же день
Учитывая таблицу, содержащую 'CompanyName'
, 'ContractExpirationDate'
, а также 'EmailAlertAddress'
где может быть более одного ContractExpirationDate
в тот же день, т. е. более одного контракта компании может истечь в тот же день.
И каждая компания имеет свой адрес для EmailAlertAddress
, Т.е. оповещения компании ABC идут по адресу ABC@domain.com; Уведомления компании XYZ отправляются по адресу XYZ@domain.com.
Company ABC 08/13/2016 ABC@domain.com
Company DEF 11/31/2017 DEF@domain.com
Company GHI 12/31/2017 GHI@domain.com
Company KLM 01/31/2018 KLM@domain.com
Company NOP 02/31/2018 NOP@domain.com
Company XYZ 08/13/2016 XYZ@domain.com
Мне нужно ежедневно проверять все записи на срок, истекающий через 90, 60 и 30 дней. (Поскольку я проверяю ежедневно и хочу, чтобы оповещение выходило только один раз за каждый период, который я буду использовать "WHERE ExpirationDate = CONVERT(VARCHAR,GetDate() + 90, 101)"
так "="
не ">="
Просто уточнить там.)
Что я не могу понять, так это как отправить уведомление только на соответствующий адрес электронной почты для каждой компании, если более одного истекает в одну и ту же дату.
Скажем, пройдитесь по тем, срок действия которых истекает в тот день, и отправьте уведомление ABC для компании ABC на ABC@domain.com и отправьте уведомление XYZ для компании XYZ на XYZ@domain.com, скажем, за 90 дней до дня, когда они оба истекают.