Google BigQuery错误:查询执行期间超出了资源

时间:2016-03-23 20:55:07

标签: google-bigquery

我得到的资源超过"当我在BigQuery中运行以下简单查询时出现错误,此错误的大部分答案都引用了EACH子句,但我在查询中没有使用任何此类子句。

SELECT
  XXX_lnaourj_ID,
  XXX_DR_Tma_LC,
  XXX_CR_Tma_LC,
  XXX_Amount_LC,
  XXX_TLAffect_LC,
  XXX_Entry_Desc,
  XXX_DocType,
  XXX_TCode,
  XXX_Company,
  XXX_Posted_By,
  XXX_Parked_By,
  XXX_Accounting_Date,
  XXX_Creation_Date
FROM
  [acl_data.XXX_JE_All_Formatted]
WHERE
  XXX_lnaourj_ID IN (
  SELECT
    XXX_lnaourj_ID
  FROM
    [acl_data.XXX_JE_All_Formatted]
  WHERE
    XXX_Creation_Date - XXX_Accounting_Date > 30 )
ORDER BY
  XXX_lnaourj_ID ASC;

1 个答案:

答案 0 :(得分:1)

删除ORDER BY,它应该可以正常工作

我认为BigQuery引擎使用JOIN转换您的查询(这就是为什么您会看到它被引用),所以另一个选项是使用JOIN明确重写您的查询并使用和/或不使用EACH进行尝试条款

请参阅https://stackoverflow.com/a/24191584/5221944了解来自bigquery团队成员的更多详情

  

编辑

我还没有意识到它是同一张桌子!为什么不使用下面这样的东西?

SELECT
  XXX_lnaourj_ID,
  XXX_DR_Tma_LC,
  XXX_CR_Tma_LC,
  XXX_Amount_LC,
  XXX_TLAffect_LC,
  XXX_Entry_Desc,
  XXX_DocType,
  XXX_TCode,
  XXX_Company,
  XXX_Posted_By,
  XXX_Parked_By,
  XXX_Accounting_Date,
  XXX_Creation_Date
FROM [acl_data.XXX_JE_All_Formatted]
WHERE XXX_Creation_Date - XXX_Accounting_Date > 30