Как сделать запрос для приведения значения в столбце для всех секционированных таблиц в большом запросе - PullRequest
0 голосов
/ 19 июня 2019

Мне любопытно, есть ли способ запрашивать и записывать все разделенные таблицы в большом запросе. Я хотел привести один столбец к другому типу данных и применить его ко всем значениям в разделах большой таблицы запросов.

т.е.

select cast(nums as STRING) from `project_id.dataset.table`

И выписать его обратно на все значения в столбце таблицы. Есть ли простой способ сделать это в bigquery?

1 Ответ

0 голосов
/ 19 июня 2019

Давайте создадим таблицу:

CREATE TABLE `deleting.part`
PARTITION BY day 
AS
SELECT DATE('2018-01-01') day, 2 i
UNION ALL SELECT DATE('2018-01-02'), 3

enter image description here

Теперь давайте изменим i с INT64 на FLOAT64:

CREATE OR REPLACE TABLE `deleting.part`
PARTITION BY day 
AS
SELECT * REPLACE(CAST(i AS FLOAT64) AS i)
FROM `deleting.part`

enter image description here

Стоимость: полное сканирование таблицы.

...