Крутые функции даты Greenplum, которые должен знать каждый
Вы полюбите этот блог, потому что функции даты и форматирование сильно отличаются между базами данных, именно поэтому я решил посветить этой теме целую статью с наглядными примерами.
Ниже я приложил достаточно интересное видео, после которого описал крутые функции даты в Greenplum. Обязательно посмотрите двухминутное видео, которое объединяет таблицу Greenplum с таблицами из Databricks, Snowflake, Redshift, Google BiqQuery, Synapse, Vertica, Teradata, Oracle, SQL Server, DB2, Yellowbrick, MySQL, Postgres, Microsoft Access, Excel в единый федератированный запрос.
Current_date будет возвращать сегодняшнюю дату. Добавьте или вычтите число из CURRENT_DATE, и Вы сможете добавлять или убирать дни от этой даты. Например, после вычета двух дат Вы получите количество дней между двумя датами.
Выше приведены ключевые слова, которые Вы можете использовать для получения даты или временной метки. Это зарезервированные слова, которые система доставит по Вашему требованию.
Для форматирования дат используйте функцию TO_CHAR.
Пример ниже показывает, насколько надежно команда EXTRACT извлекает части даты, времени или временной метки.
Вы можете извлечь десятилетия, день недели (DOW) и день года (DOY).
Ниже приведены примеры, в которых для получения подполей используется функция date_part. Параметр text должен быть значением строки, а не именем, поэтому не забывайте про цитаты.
Для извлечения частей даты. Вы можете использовать расширение to_char.
Команда AGE будет указывать разницу во времени между датами, временем или временными отметками.
Ниже приведены примеры, в которых для получения подполей используется функция Dapfte Trunc. Параметр text должен быть значением строки, а не именем, поэтому не забывайте про цитаты. Значение, которое будет возвращено, - это типовое время или интервал. Допустимые текстовые имена - микросекунды, миллисекунда, вторая, минута, час, день, неделя, месяц, квартал, год, десятилетие, век и тысячелетие.
Примеры ниже показывают, как именно использовать интервалы по годам, месяцам и годам.














