У меня есть таблица sql с двумя столбцами. Один столбец называется dateUpdated, а другой называется dateReported. Я хочу создать третий столбец, который содержит целое значение рабочих дней между dateUpdated и dateReported для каждой строки. dateUpdated будет ВСЕГДА быть датой после или по значению dateReported. Например, таблица может выглядеть так:SQL-запрос получает рабочие дни из двух столбцов даты
DATE UPDATED Date Reported
2015-06-23 2015-06-02
2015-06-05 2015-06-04
2015-06-23 2015-06-15
2015-06-17 2015-06-04
2015-06-23 2015-06-27
2015-06-23 2015-06-04
2015-06-08 2015-06-04
В третьей колонке должно быть количество рабочих дней между двумя столбцами для каждой строки. Мой текущий SQL выглядит следующим образом
select date(time_of_update) as updated,
rep.date_reported as dateReported
from history hist left join reports rep
on hist.name = rep.name
left join calendar cal
on rep.date_reported = cal.calendar_date;
Мой календарь таблица содержит столбец всех дат, а также адъюнкт-столбец, который отмечает, если они рабочие дни. Например, я мог бы запускать что-то вроде
select sum(is_business_day) from calendar where
calendar_date between '2015-06-02' and '2015-06-23';
и я получаю 16 дней. Мне было интересно, как я могу объединить эти два, чтобы получить две вышеупомянутые колонки, а также третью.
Подзапрос допустим, если это единственный способ сделать это. Благодаря!