# #google-bigquery
Вопрос:
У меня есть большая таблица запросов со схемой в виде :
CREATE TABLE `abc`
(
col2 STRING,
col1 DATE,
col3 STRING,
);
и после создания и загрузки в него данных на несколько месяцев я понял, что хочу, чтобы DDL выглядел так,
CREATE TABLE `abc`
(
col1 DATE,
col2 STRING,
col3 STRING,
);
Я хочу этого изменения, потому что вышестоящий код ETL ожидает его таким образом.
Есть ли способ достичь этого?
PS: удалить и создать таблицу невозможно, так как в ней есть важные данные.
Спасибо 🙂
Ответ №1:
Вы не пропустите ни одной информации. Попробуй это.
create or replace table <SCHEMA.NEW_TABLE_NAME> as
select col1,col2,col3 from <SCHEMA.OLD_TABLE_NAME>;
Ответ №2:
Когда вы сделаете выбор, вы сможете передать порядок, который вы хотите для своих столбцов.
Вместо того, чтобы выбрать его как SELECT * FROM ...
просто сделайте это так, как SELECT col1, col2, col3 FROM ...