Я хочу витягнути лише частину дати з мітки часу в PostgreSQL.
Мені потрібно, щоб це був DATE
тип postgresql, щоб я міг вставити його в іншу таблицю, яка очікує DATE
значення.
Наприклад, якщо я маю 2011/05/26 09:00:00
, я хочу2011/05/26
Я спробував робити кастинг, але отримую лише 2011 рік:
timestamp:date
cast(timestamp as date)
Я спробував to_char()
з to_date()
:
SELECT to_date(to_char(timestamp, 'YYYY/MM/DD'), 'YYYY/MM/DD')
FROM val3 WHERE id=1;
Я намагався зробити це функцією:
CREATE OR REPLACE FUNCTION testing() RETURNS void AS '
DECLARE i_date DATE;
BEGIN
SELECT to_date(to_char(val1, "YYYY/MM/DD"),"YYYY/MM/DD")
INTO i_date FROM exampTable WHERE id=1;
INSERT INTO foo(testd) VALUES (i);
END
Який найкращий спосіб вилучити дату (р / р / мм / дд) із часової позначки в PostgreSQL?