Вывести только дату и время postgres
Подскажите, пожалуйста, как в postgresql записать дату в таком формате
"2020-05-25 15:57:31"
через now()?
Столбец у меня timestamp without time zone, вызываю функцию now(), но она записывает время в таком формате
"2020-05-25 15:57:31.489".
Как из now() получить дату и время без ".489"?
Ответы (1 шт):
Автор решения: Мелкий
→ Ссылка
Собственно если вам не нужны доли секунд - то это можно указать в типе данных дополнительным параметром p: timestamp(0) without time zone, который как раз и означает число знаков в долях секунды.
melkij=> create temp table foo (dt timestamp(0) without time zone);
CREATE TABLE
melkij=> insert into foo values(now());
INSERT 0 1
melkij=> table foo;
dt
---------------------
2020-05-25 16:33:05
Для отбрасывания части timestamp от уже имеющегося значения подходит штатная функция date_trunc
SELECT date_trunc('second', timestamp_value)