Я работаю над задачей, в которой мне нужно найти ожидаемую дату для разрешения заявки, используя значения полей createdAt
и sla_name
. После этого мне нужно сравнить эту expected date
с датами в таблице holidays
.
Если expected date
попадает в holidays
, мне нужно расширить значение поля sla_name
.
Этот запрос используется.
SELECT t.sla_meet, t.tid, t.ticket_id, t.ticket_name,t.createdAt,t.updatedAt,t.status, dw.dropdown_name
as ticket_priority,p.project_name, dw3.dropdown_name as ticket_status,t.sla as sla_name,
isn.issue_name as issue_type,inn.incidentName as incident_type,t.ticket_accepted_date,
t.asset_id,t.ticket_closed_date,t.contact_number,
IF(NOW() <= DATE_ADD(t.createdAt,INTERVAL (t.sla)+1 DAY),'YES','NO') AS slaMeetData
from tickets t
JOIN assets ast ON t.asset_id=ast.asset_id
JOIN projects p ON p.project_id=ast.project_id
JOIN admin_dropdowns dw ON t.ticket_priority=dw.id
JOIN admin_dropdowns dw3 ON t.ticket_status=dw3.id
JOIN issues isn ON t.issue_type=isn.issue_id
JOIN incident_names inn ON t.incident_type=inn.incidentId
order by t.tid DESC
Это результирующие данные вышеуказанного запроса.
![enter image description here](https://i.stack.imgur.com/BCEnP.png)
Теперь мне нужно сравнить holidays
в Выше запрос. И пример данных:
![enter image description here](https://i.stack.imgur.com/JlKEb.png)
Если ожидаемая дата, которая входит в IF
условие вышеупомянутого запроса, попадает в это holidays
, Мне нужно обновить значение sla_name
с помощью COUNT OF HOLIDAYS (Если есть начальные данные и конечные даты, нужно посчитать дни между ними) + sla_name .
Если ожидается дата Это относится к диапазону дат (даты начала и окончания праздников), необходимо рассчитать количество дней от ожидаемой даты до даты окончания и обновить это число в поле sla_name
Возможно ли сделать эту функцию в SQL? Я использовал вышеупомянутый запрос как VIEWS .