Расчет разницы между двумя датами на основе нескольких условий - PullRequest
0 голосов
/ 14 декабря 2018

будет очень признателен за любую помощь, которую вы можете оказать в следующих ситуациях.

У меня есть две таблицы и третья таблица, которая является объединенной таблицей этих двух таблиц.

Каждая таблица содержит информацию об изменениях этапа, где для моего расчета важны старое значение поля этапа, новое значение и дата изменения.

В случае, если в таблице 1 есть только дата1, я использую следующий код SQLite

select *,         case when `Duration1` = 0 then 1 else Duration1 end as "Duration1"

from 
(select * ,

coalesce(JULIANDAY(`date2`) - JULIANDAY(`date1`), `report2: Stage Duration`)
as "Duration1"
from table)`

В идеальном сценарии таблица 1 содержит проект и 1-ю дату (date1), таблица 2 содержит проект и2-я дата (дата2).Я могу присоединиться к ним, и я могу получить 3-ю таблицу с 1-й и 2-й датами и вычислить разницу между 2 датами там.

Сложность возникает в тех случаях, когда у меня есть 2 даты в таблице 1 и 1 дата в таблице 2. Здесь мне нужна помощь.Я хотел бы добавить в код SQL условие, гласящее:

if count(dates from report 1/date1)>count(dates from report 2/date2) 

разница должна быть (нужная мне длительность) рассчитана как

today - max(JULIANDAY(`date1`)) 

Это мой первый вопрос здесь.Заранее спасибо за помощь и понимание!

...