Google bigquery 始终获得“意外”错误

Google bigquery 始终获得“意外”错误,google-bigquery,Google Bigquery,我一直从BigQuery中得到这个结果: { "error": { "errors": [ { "domain": "global", "reason": "internalError", "message": "Unexpected. Please try again." } ], "code": 503, "message": "Unexpected. Please try again." } } 导致它的查询的形式为: SELECT

我一直从BigQuery中得到这个结果:

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "internalError",
    "message": "Unexpected. Please try again."
   }
  ],
  "code": 503,
  "message": "Unexpected. Please try again."
 }
}
导致它的查询的形式为:

SELECT y.f1, y.f2, y.f3, y.f4, y.f5, y.f6, y.f7,  
       t.f1, t.f2, t.f3, t.f4, t.f5, t.f6, t.f7
FROM
  (
    SELECT 
      f1, f2, f3, f4, f5, f6, f7 
    FROM
      ds.data_20120503 
    WHERE 
      kind='A'
  )
  AS y
  JOIN 
  (
    SELECT 
      f1, f2, f3, f4, f5, f6, f7 
    FROM
      ds.data_20120504 
    WHERE 
      kind='A'
  )
  AS t
  ON y.f7 = t.f7

如果我只运行子选择,它们工作得很好,所以我猜这与“连接”有关。我应该从这里走到哪里?

我怀疑您看到的是1返回的数据太多,以至于2我们返回了一条可怕的错误消息。对于固定的f7值,您知道每个子选择中大约有多少行吗


要进行检查,可以尝试向每个子选择添加限制10,然后再次运行查询。如果这样做有效,我们需要找到一种方法来编写查询,以了解您想要了解的内容。如果仍然失败,请发送一个作业id以便我们进行调查。

看起来您在bigquery中遇到了一个错误-当两个连接键的名称相同并且都在结果中返回时,我们会得到一个无效的架构并使查询失败。我已经在内部将此作为一个bug提交,希望很快就能得到修复


作为一种解决方法,如果您从所选结果中删除y.f7或t.f7,因为您要加入它们的相等性,则将这两个结果都包括在内是多余的。或者,您可以在其中一个SELECT中使用as子句将其命名为其他名称-如f7中的as joinedF7。

我明天开始工作时会检查它,但每个子选择中可能有17000行。至少在使用web客户端时,将限制10添加到每个子选择中似乎没有什么区别。我的查询示例可以在job_f789c7dbedf645aeb4c98225bb1e345cLooks中找到,就像您在bigquery中遇到了一个bug:很高兴提供帮助。:。从所选结果中删除y.f7或t.f7:将尝试,谢谢。