Не съм сигурен какъв еквивалент търсите, но:
- няма наносекунда точност
в PostgreSQL:Разрешеният диапазон на p (точност) е от 0 до 6 за
timestamp
иinterval
видове. - някои части от датата включват други:т.е.
milliseconds
съдържаseconds
µseconds
съдържаmilliseconds
(и следователноseconds
също).
Ако търсите логически отделни стойности, ще трябва да направите малко математика, напр.:
select extract(dow from ts) dow, -- day-of-week (where weeks start on sunday, which is 0)
extract(isodow from ts) isodow, -- ISO day-of-week (where weeks start on monday, which is 1)
floor(extract(seconds from ts))::int only_seconds,
floor(extract(milliseconds from ts))::int - 1000 * floor(extract(seconds from ts))::int only_milliseconds,
floor(extract(microseconds from ts))::int - 1000 * floor(extract(milliseconds from ts))::int only_microseconds,
extract(microseconds from ts) all_microseconds
Или, ако търсите колко далеч е дадено времево клеймо в рамките на действителната седмица, можете да използвате timestamp
(и interval
) аритметика също:
select ts - date_trunc('week', ts) time_elapsed_since_monday
(Въпреки че е доста трудно да се изчисли това за седмици, които започват в неделя:date_trunc
работи само със седмици по ISO).
http://rextester.com/SOOO48159