BigQuery 数据类型

Posted

技术标签:

【中文标题】BigQuery 数据类型【英文标题】:BigQuery datatypes 【发布时间】:2012-07-30 13:09:39 【问题描述】:

我从一个新项目开始,只是想在定义表架构之前进行验证

BigQuery 是否支持以下内容:

string – 
integer –
float– 
boolean – 

【问题讨论】:

你可以在这里找到完整的数据类型列表,cloud.google.com/bigquery/preparing-data-for-bigquery#datatypes 【参考方案1】:

BigQuery 数据类型官方文档:

https://cloud.google.com/bigquery/data-types https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types

上一个答案列出了基本的数据类型:

字符串 整数 (INT64) 浮点数 (FLOAT64) 布尔值

BigQuery 还支持:

记录(JSON 对象,查看嵌套记录) 时间戳 字节 日期 时间 日期时间 阵列 结构

2018 年以及现在:

数字 地理

更多:

嵌套记录:https://developers.google.com/bigquery/docs/data#nested 使用时间戳:https://developers.google.com/bigquery/docs/timestamp 文档:https://developers.google.com/bigquery/preparing-data-for-bigquery#datatypes

【讨论】:

TIMESTAMP 不是字符串。 (不过,在 bigquery.cloud.google.com 表上,它确实会以字符串格式打印出来) @felipe-hoffa BQ 是否有机会支持原生“地图”类型?将是一个很好的补充。正在查看 Spark -> BQ 类型映射(spark 原生具有结构、数组和映射)......当然可以解决它,只是想知道它是否会在某个时候成为原生类型? 我认为您还想为标准 SQL 添加链接 - cloud.google.com/bigquery/docs/reference/standard-sql/…【参考方案2】:

确实如此。

BigQuery Type   ICD Type    Length    Checks

INTEGER         Integer     
FLOAT           Decimal     
STRING          Text        <65536  
BOOLEAN         Choice                "true" or "false", case-insensitive

https://developers.google.com/bigquery/articles/ingestionbestpractices#cutplace

【讨论】:

谢谢查尔斯,只是想在定义架构之前仔细检查一下。我只是希望有一种我不知道的日期时间数据类型。 :) 还没有……听说这个datetime类型在路上了!【参考方案3】:

布尔值还支持 1 表示真,0 表示假,时间戳支持 UTC 或 "YYYY-MM-DD HH:MM:SSSS"

【讨论】:

以上是关于BigQuery 数据类型的主要内容,如果未能解决你的问题,请参考以下文章

BigQuery数据类型

我使用啥 BigQuery 数据类型来支持许多十进制数字

从表中读取 BigQuery 数值数据类型

如何更改 BigQuery 中列的数据类型

BigQuery:加载具有日期列数据类型的 avro 文件,只要转换为时间戳

Firebase Analytics 数据到 Redshift - BigQuery RECORD 数据类型到 Redshift