Разница в датах PostgreSQL
У меня есть функция PostgreSQL, которая вычисляет разницу дат:
CREATE OR REPLACE FUNCTION testDateDiff () RETURNS int AS $BODY$
DECLARE startDate TIMESTAMP;
DECLARE endDate TIMESTAMP;
DECLARE diffDatePart int ;
BEGIN
Select evt_start_date From events Where evt_id = 5 INTO startDate ;
Select evt_start_date From events Where evt_id = 6 INTO endDate ;
SELECT EXTRACT(day FROM TIMESTAMP startDate - endDate) INTO diffDatePart;
RETURN diffDatePart;
END;
$BODY$
LANGUAGE plpgsql
COST 100
Если даты вычитаются напрямую, то рассчитывается разница. Но в моем случае даты присутствуют в переменных какstartDate
а такжеendDate
, который вызывает проблему.
Как я могу вычесть даты, содержащиеся в переменных?