Есть ли в большом запросе Google функция поиска первой и последней даты номера недели ISO / номера недели календарного года? - PullRequest
0 голосов
/ 02 марта 2020

Давайте предположим календарную неделю.

Номер недели - 02 из 2020.

Я ищу способы найти даты начала и окончания недели. Любые указатели на встроенную функцию или любые другие подходы будут полезны.

1 Ответ

0 голосов
/ 02 марта 2020

Я не вижу прямого пути, но с существующими функциями даты , очень легко создать справочную таблицу, к которой вы можете обратиться:

CREATE TABLE day_of_week_table AS
SELECT
  date,
  EXTRACT(ISOYEAR FROM date) AS isoyear,
  EXTRACT(ISOWEEK FROM date) AS isoweek,
  EXTRACT(WEEK FROM date) AS week,
  EXTRACT(DAYOFWEEK FROM date) AS dayOfWeek
FROM UNNEST(GENERATE_DATE_ARRAY('2020-1-1', '2021-1-1')) AS date
ORDER BY date;

Вставить первым несколько строк этой таблицы

|    date    | isoyear | isoweek | week | dayOfWeek |
+------------+---------+---------+------+-----------+
| 2020-01-01 |    2020 |       1 |    0 |         4 |
| 2020-01-02 |    2020 |       1 |    0 |         5 |
| 2020-01-03 |    2020 |       1 |    0 |         6 |
| 2020-01-04 |    2020 |       1 |    0 |         7 |
| 2020-01-05 |    2020 |       1 |    1 |         1 |
| 2020-01-06 |    2020 |       2 |    1 |         2 |
| 2020-01-07 |    2020 |       2 |    1 |         3 |
| 2020-01-08 |    2020 |       2 |    1 |         4 |
| 2020-01-09 |    2020 |       2 |    1 |         5 |
| 2020-01-10 |    2020 |       2 |    1 |         6 |
| 2020-01-11 |    2020 |       2 |    1 |         7 |
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...