century(date) |
int |
Вычитает один век из строки с типом date, timestamp или timestamptz |
century(date '2020-03-22') |
21 |
curdate() |
date |
Возвращает текущую дату |
curdate() |
date '2020-03-22' |
current_date() |
date |
Возвращает текущую дату |
current_date() |
date '2020-03-22' |
current_time() |
timetz |
Возвращает текущее время с часовым поясом |
current_time() |
timetz '13:16:57.734639+01:00' |
current_timestamp() |
timestamptz |
Возвращает текущую временную метку с часовым поясом |
current_timestamp() |
timestamptz '2020-03-22 13:16:57.734639+01:00' |
curtime() |
timetz |
Возвращает текущее время с часовым поясом |
curtime() |
timetz '13:16:57.734639+01:00' |
date_to_str(date, format_str) |
clob |
Преобразует дату в строку с использованием формата format_str. См. спецификаторы формата |
date_to_str(date '2020-03-22', '%D %d.%m.%Y'); |
03/22/20 22.03.2020 |
date_trunc(field_str, timestamp) |
timestamp |
Усекает временной метки до гранулярности, указанной в поле field_str. Допустимые значения для field_str: 'millennium', 'century', 'decade', 'year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', 'milliseconds', 'microseconds' |
date_trunc('month', timestamp '2020-03-22 13:16:57.734639'); |
timestamp '2020-03-01 00:00:00.000000' |
"day"(dt_or_ts) |
int |
Извлекает порядковый номер дня месяца (1–31) из даты (date), временной метки (timestamp) или временной метки c часовым поясом (timestamptz). То же, что и: dayofmonth(date) |
"day"(date '2020-03-22') |
22 |
"day"(sec_interval) |
bigint |
Вычисляет количество дней и обрезает его до целого числа |
"day"(interval '3.23' second * (24 * 60 * 60)) |
3 |
{fn DAYNAME(dt_or_ts)} |
varchar |
Извлекает название дня в текущей локали из из даты (date), временной метки (timestamp) или временной метки c часовым поясом (timestamptz). Эта функция требует использования синтаксиса управляющих последовательностей ODBC |
select {fn DAYNAME({d '2020-03-22'})} |
Sunday |
dayofmonth(dt_or_ts) |
int |
Извлекает порядковый номер дня месяца (1–31) из даты (date), временной метки (timestamp) или временной метки c часовым поясом (timestamptz). То же, что и: day(date) |
dayofmonth(date '2020-03-22') |
22 |
dayofweek(dt_or_ts) |
int |
Извлекает порядковый номер дня недели (1–7) из даты (date), временной метки (timestamp) или временной метки c часовым поясом (timestamptz) |
dayofweek(date '2020-03-22') |
7 |
dayofyear(dt_or_ts) |
int |
Извлекает порядковый номер дня года (1–366) из даты (date), временной метки (timestamp) или временной метки c часовым поясом (timestamptz) |
dayofyear(date '2020-03-22') |
82 |
decade(dt_or_ts) |
int |
Извлекает порядковый номер декады из даты (date), временной метки (timestamp) или временной метки c часовым поясом (timestamptz) |
decade(date '2027-03-22') |
202 |
epoch(int seconds) |
timestamptz |
Добавляет количество секунд к временной метке (timestamp) '1970-01-01 00:00:00.0' |
epoch(1234567890) |
timestamptz '2009-02-14 01:31:30.000000+02:00' |
epoch(decimal(18,3) seconds) |
timestamptz |
Добавляет количество секунд к временной метке (timestamp) '1970-01-01 00:00:00.0' |
epoch(1234567890.456) |
timestamptz '2009-02-14 01:31:30.456000+02:00' |
epoch(timestamp) |
int |
Преобразует временную метку (timestamp или timestamptz) в количество секунд, прошедших с '1970-01-01 00:00:00.0' |
epoch(timestamp '2009-02-13 23:31:30.0') |
1234567890 |
epoch_ms(dt_or_tm_or_ts_or_interval) |
decimal(18,3) |
Преобразует date, time, timestamp или interval в количество миллисекунд, прошедших с '1970-01-01 00:00:00.0' |
epoch_ms(timestamp '2009-02-13 23:31:30.0') |
1234567890 |
extract(field from dt_value) |
int |
Извлекает определенное поле из date, time или timestamp. Поддерживаются следующие ключевые слова для поля: CENTURY, DECADE, YEAR, QUARTER, MONTH, WEEK, DAY, DOW, DOY, HOUR, MINUTE и SECOND. |
extract(dаy from date '2027-03-22') |
81 |
greatest(x, y) |
Тот же, что и на входе |
Наивысшее (наибольшее) значение из x и y (то же, что и sql_max(x,y)) |
greatest(date '2020-03-22', date '2020-03-25') |
date '2020-03-25' |
"hour"(tm_or_ts) |
int |
Извлекает порядковый номер часа в сутках (0–23) из time, timetz, timestamp, timestamptz или sec_interval |
"hour"(timetz '15:35:02.002345+01:00') |
16 |
least(x, y) |
Тот же, что и на входе |
Наименьшее значение из x и y (то же, что и sql_min(x,y)) |
least(time '15:15:15', time '16:16:16') |
time '15:15:15' |
local_timezone() |
sec_interval |
Получает местный часовой пояс в секундах |
local_timezone() |
7200 |
localtime() |
time |
Получает местное время без часового пояса |
localtime() |
time '13:16:57.734639' |
localtimestamp() |
timestamp |
Получает местную временную метку (дату, время и временные доли) без часового пояса |
localtimestamp() |
timestamp '2020-03-22 13:16:57.734639' |
"minute"(tm_or_ts) |
int |
Извлекает минуты (0–59) из time, timetz, timestamp, timestamptz или sec_interval |
"minute"(timetz '15:35:02.002345+01:00') |
35 |
"month"(dt_or_ts) |
int |
Извлекает порядковый номер месяца (1–12) из date, timestamp, timestamptz или month_interval |
"month"(date '2020-07-22') |
7 |
{fn MONTHNAME(dt_or_ts)} |
varchar |
Извлекает название месяца в текущей локали из date, timestamp или timestamptz. Эта функция требует использования синтаксиса управляющих последовательностей ODBC |
select {fn MONTHNAME({d '2020-03-22'})} |
March |
now() |
timestamptz |
Получает текущую временную метку (дату, время и временные доли) с часовым поясом |
now() |
timestamptz '2020-03-22 13:16:57.734639+01:00' |
quarter(dt_or_ts) |
int |
Извлекает номер квартала (1–4) из date, timestamp или timestamptz |
quarter(date '2020-07-22') |
3 |
"second"(sec_interval) |
int |
Извлекает секунды (0–59) из sec_interval |
"second"(interval '24' second) |
24 |
"second"(tm_or_ts) |
decimal(9,6) |
Извлекает секунды (0.000 .. 59.999999) из time, timetz, timestamp или timestamptz |
"second"(timetz '15:35:02.002345+01:00') |
2.002345 |
sql_add(dt_or_ts, month_interval) |
Тот же, что и в dt_or_ts |
Добавляет целочисленное значение месячного интервала к date, timestamp или timestamptz |
sql_add(date '2021-12-31', interval '2' month) |
date '2022-02-28' |
sql_add(dt_or_tm, sec_interval) |
Тоn же, что и в arg1 |
Добавляет десятичное значение интервала в секундах к date, time, timetz, timestamp, timestamptz |
sql_add(time '15:35:50', interval '50' second) |
time '15:36:40' |
sql_max(x, y) |
Тот же, что и на входе |
Наивысшее (наибольшее) значение из x и y (то же, что и greatest(x,y)) |
sql_max(date '2020-03-22', date '2020-03-25') |
date '2020-03-25' |
sql_min(x, y) |
Тот же, что и на входе |
Наименьшее значение из x и y (то же, что и least(x,y)) |
sql_min(time '15:15:15', time '16:16:16') |
time '15:15:15' |
sql_sub(date, date) |
int |
Вычитает одну дату из другой, возвращая количество секунд между двумя датами |
sql_sub(date '2021-12-31', date '2021-12-11') |
interval '20' day |
sql_sub(dt_or_ts, month_interval) |
Тот же, что и в dt_or_ts |
Вычитает целочисленное значение месячного интервала из date, timestamp или timestamptz |
select sql_sub(date '2021-12-31', interval '-2' month) |
date '2022-02-28' |
sql_sub(dt_or_tm, sec_interval) |
Тот же, что и в dt_or_tm |
Вычитает десятичное значение интервала в секундах из date, time или timetz, timestamp или timestamptz |
select sql_sub(time '15:35:50', interval '3:25' minute to second) |
time '15:32:25' |
sql_sub(time, time) |
sec_interval |
Вычитает одно значение time из другого, возвращая количество секунд между двумя временами |
sql_sub(time '9:00:00', time '17:00:00') |
interval '-28800' second |
sql_sub(timestamp, timestamp) |
sec_interval |
Вычитает одно значение timestamp из другого, возвращая количество секунд между двумя временными метками |
sql_sub(timestamp '2021-12-31 18:00:00', timestamp '2021-12-31 17:00:00') |
interval '3600' second |
sql_sub(timestamptz, timestamptz) |
sec_interval |
Вычитает одно значение timestamptz из другого, возвращая количество секунд между двумя временными метками с часовым поясом |
sql_sub(timestamptz '2021-12-31 18:00:00+02:00', timestamptz '2021-12-31 18:00:00-02:00') |
interval '-14400' second |
sql_sub(timetz, timetz) |
sec_interval |
Вычитает одно значение timetz из другого, возвращая количество секунд между двумя временами |
sql_sub(timetz '18:00:00+02:00', timetz '18:00:00-02:00') |
interval '-14400' second |
str_to_date(s, format_str) |
date |
Обрабатывает строку s, используя format_str и составляет значение в формате date. См. спецификаторы формата |
str_to_date('4/30/2021', '%m/%d/%Y') |
date '2021-04-30' |
str_to_time(s, format_str) |
timetz |
Обрабатывает строку s, используя format_str и составляет значение в формате time(0) с часовым поясом. См. спецификаторы формата |
str_to_time('09:30:49','%H:%M:%S') |
time(0) with time zone '11:30:49+02:00' |
str_to_timestamp(s, format_str) |
timestamptz |
Обрабатывает строку s, используя format_str и составляет значение в формате timestamp с часовым поясом. См. спецификаторы формата |
str_to_timestamp('4/30/2021 09:30:49','%m/%d/%Y %H:%M:%S') |
timestamptz '2021-04-30 11:30:49.000000+02:00' |
time_to_str(timetz, format_str) |
clob |
Преобразует timetz в строку используя format_str. См. спецификаторы формата |
time_to_str(timetz '19:30:49', '%l hour %M:%S %p') |
' 7 hour 30:49 PM' |
timestamp_to_str(timestamptz, format_str) |
clob |
Преобразует timestamptz в строку, используя format_str. См. спецификаторы формата |
timestamp_to_str(timestamptz '2021-12-31 18:00:00', '%m/%d/%Y %l:%M:%S %p') |
'12/31/2021 6:00:00 PM' |
timestampadd(dt_ts_tm, interval) |
timestamp или timestamptz |
Добавляет interval (месяцы, дни или секунды) к timestamp (timestamptz), date или time |
select timestampadd(timestamp '2021-12-31 18:00:00', interval '2' month) |
timestamp '2022-02-28 18:00:00' |
timestampdiff(ts_tstz, ts_tstz) |
interval second |
Возвращает разницу между двумя timestamp или timestamptz |
select timestampdiff(timestamp '2021-12-31 18:40:40', timestamp '2021-12-30 16:30:20') |
interval '94220' second |
timestampdiff_day(ts_dt_tz, ts_dt_tz) |
integer |
Возвращает разницу между двумя timestamp или timestamptz, или date |
select timestampdiff_day(timestamp '2021-12-31 18:40:40', timestamp '2021-12-20 16:30:20') |
11 |
timestampdiff_hour(ts_dt_tz, ts_dt_tz) |
bigint |
Возвращает разницу между двумя timestamp или timestamptz, или date |
select timestampdiff_hour(timestamp '2021-12-31 18:40:40', timestamp '2021-12-20 16:30:20') |
266 |
timestampdiff_min(ts_dt_tz, ts_dt_tz) |
bigint |
Возвращает разницу между двумя timestamp или timestamptz, или date |
select timestampdiff_min(timestamp '2021-12-31 18:40:40', timestamp '2021-12-31 16:30:20') |
130 |
timestampdiff_month(ts_tm_tz, ts_tm_tz) |
integer |
Возвращает разницу между двумя timestamp или timestamptz |
select timestampdiff_month(timestamp '2021-12-31 18:40:40', timestamp '2021-02-20 16:30:20') |
10 |
timestampdiff_quarter(ts_tm_tz, ts_tm_tz) |
integer |
Возвращает разницу между двумя timestamp или timestamptz |
select timestampdiff_quarter(timestamp '2021-12-31 18:40:40', timestamp '2021-02-20 16:30:20') |
3 |
timestampdiff_sec(ts_dt_tz, ts_dt_tz) |
bigint |
Возвращает разницу между двумя timestamp или timestamptz, или date |
select timestampdiff_sec(timestamp '2021-12-31 18:40:40', timestamp '2021-12-31 16:30:20') |
7820 |
timestampdiff_week(ts_tm_tz, ts_tm_tz) |
integer |
Возвращает разницу между двумя timestamp или timestamptz |
select timestampdiff_week(timestamp '2021-12-31 18:40:40', timestamp '2021-02-20 16:30:20') |
44 |
timestampdiff_year(ts_tm_tz, ts_tm_tz) |
integer |
Возвращает разницу между двумя timestamp или timestamptz |
select timestampdiff_year(timestamp '2021-12-31 18:40:40', timestamp '2024-02-20 16:30:20') |
-3 |
usweekofyear(date) |
int |
Возвращает номер американской недели (1–53) из указанной даты. В американской системе недели начинаются с воскресенья и заканчиваются субботой, а в начале и конце года есть неполные недели |
usweekofyear(date '2020-03-22') |
13 |
week(dt_or_ts) |
int |
Извлекает номер недели ISO 8601 (1–53) из date, timestamp или timestamptz. То же, что и weekofyear(date) |
week(date '2020-03-22') |
12 |
weekofyear(dt_or_ts) |
int |
Извлекает номер недели ISO 8601 (1–53) из date, timestamp или timestamptz. То же, что и week(date) |
weekofyear(date '2020-03-22') |
12 |
"year"(dt_or_ts) |
int |
Извлекает номер года из date или timestamp или timestamptz или month_interval |
"year"(date '2020-03-22') |
2020 |