#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 и т. Д.