Вычитать даты в выражении CASE - PullRequest
0 голосов
/ 13 апреля 2019

Я хочу узнать, сколько дней в запросе между двумя датами.Вероятно, это что-то простое для опытного человека из Postgres, но я не могу найти ответ ..

И помощь будет отличной.

CASE
 WHEN DATEDIFF('day',a.date_approve,a.current_rec_date) = 1 
     THEN a.current_rec_date
 ELSE a.date_approved
END AS date_approved,

1 Ответ

0 голосов
/ 13 апреля 2019

В Postgres нет datediff().

Если столбцы date s, то просто вычитая их, вы получите разницу в днях.

...
a.date_approve - a.current_rec_date = 1
...

Если их вычесть timestamp, вы получите interval, поэтому вам нужно сравнить его с interval.

...
a.date_approve - a.current_rec_date = '1 day'::interval
...

Более подробную информацию можно получить из документации .

...