Функция даты в стандартном SQL в Google bigquery

#datetime #google-bigquery

#datetime #google-bigquery

Вопрос:

Какие функции даты, такие как (YEAR(), MONTH(), DATEADD(), DATEDIFF(), …) в стандартном SQL Goolge bigquery?

Я использовал здесь функции, когда значение —use_legacy_sql равно true, но они не работают со стандартным SQL.

Комментарии:

1. См. Также Руководство по миграции с устаревшего SQL . В нем есть таблица, сравнивающая функции между двумя диалектами.

2. Похоже, что в стандартном sql нет эквивалента WEEK(). Это правильно?

Ответ №1:

Вы можете найти все функции даты для стандартного SQL BigQuery здесь: https://cloud.google.com/bigquery/sql-reference/functions-and-operators#date-functions

В частности, EXTRACT возвращает значение, соответствующее указанной части даты. Часть должна быть одной из:

 DAYOFWEEK (Returns 1-7, where 1=Sunday ... 7=Saturday)
DAY
DAYOFYEAR
MONTH
QUARTER (Returns 1-4)
YEAR
  

См. Также DATE_ADD , DATE_SUB , DATE_DIFF и rest для соответственно DATEADD(), DATEDIFF() …

Комментарии:

1. Обратите внимание, что функции DATEADD, DATEDIFF и т. Д. В устаревшем SQL фактически работали с типом метки ВРЕМЕНИ, а не с ДАТОЙ, поэтому их аналогами в стандартном SQL являются TIMESTAMP_ADD, TIMESTAMP_DIFF и т. Д.