来自csv文件

时间:2016-10-29 12:27:50

标签: date csv google-bigquery

我一直在尝试从csv文件上传一个包含日期的表,但我一直收到有关日期类型的错误,如下所示:

Errors:
Too many errors encountered. (error code: invalid)
query: Invalid date: '2010-06-31' (error code: invalidQuery)

所以它抱怨2010-06-31。我检查了参考文献并说:

  

日期类型

     

名称说明DATE表示逻辑日历日期。值范围   在1至9999年之间,包括在内。 DATE类型代表一个   逻辑日历日期,与时区无关。 DATE值不是   表示特定的24小时时间段。而是给定的DATE值   代表不同的24小时时间   时区,并且可以在白天期间表示更短或更长的一天   节省时间转换。要表示绝对时间点,请使用   时间戳。

     

规范格式

     

'YYYY- [M] M- [D] D'YYYY:四位数年份[M] M:一个月或两位数月份   [D] D:一天或两位数

https://cloud.google.com/bigquery/sql-reference/data-types#date-type

它说YYYY- [M] M- [D] D所以我认为2010-06-31是正确的,但仍然会出错。

我的行在csv文件中看起来像这样:

Regular Season,2010-06-31,Chicago,Road,22,37,21,28,,,,,108,240,39,79

我的架构如下所示:

_Dataset: STRING
_DATE: DATE
_TEAMS: STRING
_VENUE: STRING
_1Q: INTEGER
_2Q: INTEGER
_3Q: INTEGER
_4Q: INTEGER
_OT1: INTEGER
_OT2: INTEGER
_OT3: INTEGER
_OT4: INTEGER
_F: INTEGER
_MIN: INTEGER
_FG: INTEGER
_FGA: INTEGER

提前感谢您的帮助

1 个答案:

答案 0 :(得分:4)

即使6月31日按照The Thirty-first of June by J.B. Priestley存在 - 你的问题可能只是因为在现实中 - 六月只有30天,所以负载引擎在6月31日陷入困境

另一方面 - 查询引擎成功"翻译" 2010-06-31进入2010-07-01 - 尝试下面的例子

SELECT DATE('2010-06-31')