Я ошибаюсь?
Нет, это так, когда вы перезаписываете исходную схему таблицы, а столбцы по умолчанию обнуляются
Всегда ли это так?
Вы должны использовать CREATE OR REPLACE TABLE
DDL, чтобы достичь своей цели.Нечто вроде ниже
CREATE OR REPLACE TABLE `project.dataset.mytable` (
id STRING NOT NULL,
column1 INT64 NOT NULL,
column2 INT64 NOT NULL
) AS
SELECT CAST(id AS STRING) as id, column1, column2
FROM `project.dataset.mytable`