Google bigquery 当从UI运行加载作业时,大查询现在会自动将长十进制值转换为数字

Google bigquery 当从UI运行加载作业时,大查询现在会自动将长十进制值转换为数字,google-bigquery,Google Bigquery,我有一个值“1.8299324”,如果我使用DML语句插入到BigQuery中,它会舍入它并插入到BigQuery中 然而,对于相同的值,如果BigQuery在控制台上使用csv文件加载作业,我会得到以下错误 “位置”:“查询”, “消息”:“无效数值:1.8299324字段:测试;值:1.8299324”, “原因”:“invalidQuery” 只是想检查这是否是Bigquery的一个限制,在load job中,它无法转换或理解此值以及如何解决它?我执行了一些测试,可以复制您提到的行为;但是

我有一个值“1.8299324”,如果我使用DML语句插入到BigQuery中,它会舍入它并插入到BigQuery中

然而,对于相同的值,如果BigQuery在控制台上使用csv文件加载作业,我会得到以下错误

“位置”:“查询”, “消息”:“无效数值:1.8299324字段:测试;值:1.8299324”, “原因”:“invalidQuery”


只是想检查这是否是Bigquery的一个限制,在load job中,它无法转换或理解此值以及如何解决它?

我执行了一些测试,可以复制您提到的行为;但是,我找不到任何文档表明这是一个BigQuery限制。鉴于在这两种情况下都观察到了不同的行为(使用DML语句和加载作业),这看起来像是平台的问题,我已经在中提交了一个问题。我建议你在那里跟进此事

我可以建议您的解决方法是创建一个新表,并将字段定义为数字而不是数字,或者在将数字内容上载到BigQuery之前将其截断到CSV文件中。

根据有9个小数位数的限制:

精度为38位小数,刻度为9位小数的十进制值

另一种选择是,使用(精度较低的)
FLOAT64
类型可以绕过此问题