gpt4 book ai didi

google-bigquery - 创建表时更改架构

转载 作者:行者123 更新时间:2023-12-05 05:34:15 25 4
gpt4 key购买 nike

当我想要附加具有不同数据类型的表时,我的流程稍后会遇到问题。

我正在从现有表格中创建一个新表格。一列是 Calenderweek(KW),它最初是一个 STRING。为了稍后附加我的表,我需要为该列使用相同的数据类型。

有没有办法在创建新表时更改列的数据类型?

CREATE TABLE IF NOT EXISTS
MyNewTable
AS(

SELECT
Column_1 AS
Column_1_alias,
**KW_ AS KW,**

FROM
SourceTable);

最佳答案

这个查询所做的是它只获取包含数字的列 KW 的值,然后检查是否 STRING value 包含一个字符并将其从 STRING 中删除.终于啦CAST到列的所需值类型,因此它以 INT 结尾.

CREATE TABLE IF NOT EXISTS
dataset.MyNewTable
AS(

SELECT
Column1 AS
Column1_alias,
CAST(REGEXP_REPLACE(KW,'[^0-9^]','') as INT64) as KW_Alias
FROM
`project.dataset.source`
WHERE REGEXP_CONTAINS(KW,'[0-9]')
);

另一种可能的解决方案是使用函数 REPLACE而不是 REGEXP_REPLACE , 将字符串替换为数字。

关于google-bigquery - 创建表时更改架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73663931/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com