SQL запрос для создания отчета о старении для ошибок, когда они были открыты

#mysql #sql

#mysql #sql

Вопрос:

Я создаю отчет о старении для ошибок, открытых для «30-60 дней», «60-90 дней», «3-6 месяцев» и «6 месяцев» для каждого квартала. Если ошибка была создана в Q-1 и все еще открыта в Q-2, и если она удовлетворяет вышеуказанному условию, ее следует учитывать в вышеуказанных сегментах для Q-2

 select Category,
       SUM(CASE WHEN Bugs_open_days > 29 and Bugs_open_days < 61 THEN 1 ELSE 0 END) as bucket_30_60,
       SUM(CASE WHEN Bugs_open_days > 60 and Bugs_open_days < 91 THEN 1 ELSE 0 END) as bucket_60_90,
       SUM(CASE WHEN Bugs_open_days > 90 and Bugs_open_days < 181 THEN 1 ELSE 0 END) as bucket_3_6,
       SUM(CASE WHEN Bugs_open_days >= 181 THEN 1 ELSE 0 END) as bucket_6monthplus
from (
select Created_Quarter,
       Category,
       bug_id,
       Resolved_Count_In_Days,
       Resolved_Count_In_Days - 1 as Bugs_open_days
from TableA)
group by 1

On Date Category 30-60 days 60-90 days  3-6 months  6  months
2018-03-31 P       0                             0   0  
2018-03-31 G       6          5              0       0
2018-03-31 W       4         10              0       0
2018-03-31 GM      16        12              0       0
2018-03-31 null    3          2              0       0
2018-06-30                  
2018-06-30                  
2018-06-30                  
2018-06-30                  
2018-06-30                  
2018-06-30                  
2018-09-30                  
2018-09-30                  
2018-09-30                  
2018-09-30                  
2018-09-30                  
2018-09-30                  
2018-12-31                  
2018-12-31                  
2018-12-31                  
2018-12-31                  
2018-12-31                  
2018-12-31                  
2019-03-31                  
2019-03-31                  
2019-03-31                  
2019-03-31                  
2019-03-31                  
2019-03-31
  

Комментарии:

1. 1) MySQL и SQL Server — это разные СУБД. Какой из них вы используете? 2) Ваш ожидаемый результат, похоже, вообще не соответствует вашему запросу. Чего вы действительно ожидаете?

2. Я использую MySQL, хотел получить помощь в создании запроса для получения желаемого результата

3. Если ошибка была создана 1/1/2019 и была закрыта 30.04.2019, это будет около 89 дней, когда ошибка была открыта. В конце Q1 вы бы включили это в 30-60 days , правильно? В конце Q2 вы бы сообщили об этом в 60-90 days ?

4. ДА… на основе конца каждого квартала мне нужен статус