Google bigquery Bigquery无法加载数据日期值或时间戳值格式错误
Google bigquery Bigquery无法加载数据日期值或时间戳值格式错误,google-bigquery,bigtable,bigdata,Google Bigquery,Bigtable,Bigdata,我是否缺少任何忽略复选框。试图忽略所有错误,但bigquery没有加载所有数据,而是忽略了日期格式行,只上载了允许的行 尝试使用空值,无法执行,没有选择,将日期替换为“1969-01-01”,时间戳替换为“1969-01-01 00:00”。我能够上传数据 有效日期的下限为0001-01-01;提供了有关各种类型的有效范围的详细信息。一个选项是将值加载为typeSTRING,然后应用诸如SAFE\u CAST(STRING\u date\u col as date)之类的函数将值转换为date类
我是否缺少任何忽略复选框。试图忽略所有错误,但bigquery没有加载所有数据,而是忽略了日期格式行,只上载了允许的行 尝试使用空值,无法执行,没有选择,将日期替换为“1969-01-01”,时间戳替换为“1969-01-01 00:00”。我能够上传数据
有效日期的下限为
0001-01-01
;提供了有关各种类型的有效范围的详细信息。一个选项是将值加载为typeSTRING
,然后应用诸如SAFE\u CAST(STRING\u date\u col as date)
之类的函数将值转换为date
类型。比如说,
1.Error while uploading CSV , where Data format is '0000-00-00' && timestamp has '0000-00-00 00:00:00' value.
2.The Datatype is DATE, TIMESTAMP as Follows.
作为一个独立的示例:
#standardSQL
SELECT
* EXCEPT(string_date_col, string_timestamp_col),
SAFE_CAST(string_date_col AS DATE) AS date_col,
SAFE_CAST(string_timestamp_col AS TIMESTAMP) AS timestamp_col
FROM MyTableWithStrings;
这将用空值替换无效的日期和时间戳字符串。没有足够的控件用于加载API来控制无效的
日期
/时间戳
值上的行为-您可以在此处向BigQuery问题跟踪器提交功能请求:。
同时,解决方法是使用CSV上的联邦查询,如中所述,并使用Elliott回答中所述的
SAFE\u CAST
功能。目前我将其设置为1969-01-01和1969-01-01 00:00:00,并且数据已上载,是否最好每行键入CAST,因为它几乎包含200万条记录。请更正我的问题。创建表时,我无法加载数据本身。我已经更新了关于发送问题的日期和时间戳的空值的问题。现在,我可能不得不将无效的日期/时间戳更改为上面的值。
#standardSQL
WITH MyTableWithStrings AS (
SELECT 1 AS x, '0000-00-00' AS string_date_col, '0000-00-00 00:00:00' AS string_timestamp_col UNION ALL
SELECT 2 AS x, '2017-03-07' AS string_date_col, '2017-03-07 12:34:56' AS string_timestamp_col
)
SELECT
* EXCEPT(string_date_col, string_timestamp_col),
SAFE_CAST(string_date_col AS DATE) AS date_col,
SAFE_CAST(string_timestamp_col AS TIMESTAMP) AS timestamp_col
FROM MyTableWithStrings;