Функції дати

16 функцій доступно

year

Вилучає рік з дати

Параметри:

  • value — Значення дати або рядок дати

Повертає: Рік як число (напр., 2024), або null якщо невалідне

Приклади:

year(order_date)
year("2024-01-15") -> 2024

month

Вилучає місяць з дати

Параметри:

  • value — Значення дати або рядок дати

Повертає: Місяць як число (1-12), або null якщо невалідне

Приклади:

month(created_at)
month("2024-03-15") -> 3

day

Вилучає день місяця з дати

Параметри:

  • value — Значення дати або рядок дати

Повертає: День як число (1-31), або null якщо невалідне

Приклади:

day(birth_date)
day("2024-01-15") -> 15

hour

Вилучає годину з дати-часу

Параметри:

  • value — Значення дати-часу або рядок дати-часу

Повертає: Годину як число (0-23), або null якщо невалідне

Приклади:

hour(timestamp)
hour("2024-01-15T14:30:00") -> 14

minute

Вилучає хвилину з дати-часу

Параметри:

  • value — Значення дати-часу або рядок дати-часу

Повертає: Хвилину як число (0-59), або null якщо невалідне

Приклади:

minute(timestamp)
minute("2024-01-15T14:30:00") -> 30

second

Вилучає секунду з дати-часу

Параметри:

  • value — Значення дати-часу або рядок дати-часу

Повертає: Секунду як число (0-59), або null якщо невалідне

Приклади:

second(timestamp)
second("2024-01-15T14:30:45") -> 45

weekday

Повертає день тижня (ISO 8601: 0=Понеділок, 6=Неділя)

Параметри:

  • value — Значення дати або рядок дати

Повертає: День тижня як число (0-6), або null якщо невалідне

Приклади:

weekday(date)
weekday("2024-01-15") -> 0 // Понеділок

week

Повертає номер тижня за ISO

Параметри:

  • value — Значення дати або рядок дати

Повертає: Номер тижня (1-53), або null якщо невалідне

Приклади:

week(order_date)
week("2024-01-15") -> 3

quarter

Повертає квартал року

Параметри:

  • value — Значення дати або рядок дати

Повертає: Квартал як число (1-4), або null якщо невалідне

Приклади:

quarter(sale_date)
quarter("2024-03-15") -> 1

today

Повертає поточну дату у форматі YYYY-MM-DD

Повертає: Поточну дату як рядок

Приклади:

order_date == today()
today() -> "2024-01-15"

now

Повертає поточну дату-час у форматі ISO

Повертає: Поточну дату-час як рядок

Приклади:

created_at < now()
now() -> "2024-01-15T14:30:45"

days_between

Обчислює кількість днів між двома датами

Параметри:

  • date1 — Початкова дата
  • date2 — Кінцева дата

Повертає: Кількість днів від date1 до date2, або null якщо будь-яка дата невалідна

Приклади:

days_between(start, end)
days_between("2024-01-01", "2024-01-15") -> 14

date_add

Додає часовий інтервал до дати

Параметри:

  • value — Значення дати або рядок дати
  • amount — Кількість одиниць для додавання (може бути від'ємним)
  • unit — Одиниця часу: "days", "months", "years", "hours", "minutes", "seconds"

Повертає: Нову дату/дату-час як рядок, або null якщо невалідне

Приклади:

date_add(order_date, 30, "days")
date_add("2024-01-15", 2, "months") -> "2024-03-15"

date_trunc

Обрізає дату до початку часового періоду з необов'язковим групуванням за інтервалами

Параметри:

  • value — Значення дати або рядок дати
  • unit — Одиниця обрізання: "year", "quarter", "month", "week", "day", "hour", "minute", "second"
  • interval — Необов'язковий розмір інтервалу для hour/minute/second (за замовчуванням 1). Напр., 5 для 5-хвилинних інтервалів

Повертає: Обрізану дату/дату-час як рядок, або null якщо невалідне

Приклади:

date_trunc(timestamp, "month")
date_trunc("2024-01-15", "month") -> "2024-01-01"
date_trunc("2024-01-15T14:37:00", "minute", 5) -> "2024-01-15T14:35:00"
date_trunc("2024-01-15T14:37:00", "hour", 4) -> "2024-01-15T12:00:00"

format_date

Форматує дату за допомогою рядка формату

Параметри:

  • value — Значення дати або рядок дати
  • format — Рядок формату з токенами (YYYY, MM, DD, HH, mm, ss тощо)

Повертає: Відформатований рядок дати, або null якщо невалідне

Приклади:

format_date(date, "DD/MM/YYYY")
format_date("2024-01-15", "MM/DD/YYYY") -> "01/15/2024"

parse_date

Розбирає рядок дати за допомогою шаблону формату

Параметри:

  • value — Рядок для розбору
  • format — Рядок формату з токенами (YYYY, MM, DD, HH, mm, ss, YY, M, D, H, m, s)

Повертає: Розібрану дату як ISO-рядок ("YYYY-MM-DD" або "YYYY-MM-DDTHH:mm:ss"), або null якщо невалідне

Приклади:

parse_date(date_col, "DD/MM/YYYY")
parse_date("15/06/2024", "DD/MM/YYYY") -> "2024-06-15"