【问题标题】:Google BigQuery: Using TABLE_QUERY if project_id contains a hyphen "-"Google BigQuery:如果 project_id 包含连字符“-”,则使用 TABLE_QUERY
【发布时间】:2016-06-17 16:05:31
【问题描述】:

这扩展了 Jordan 的帖子: How do I use the TABLE_QUERY() function in BigQuery?

这是一个工作 TABLE_QUERY SQL 的示例。

SELECT count(*)
FROM TABLE_QUERY(publicdata:samples,
    "MSEC_TO_TIMESTAMP(creation_time) < DATE_ADD(CURRENT_TIMESTAMP(), -7, 'DAY')")

但是,如果 project_id 包含“-”连字符,则 TABLE_QUERY 会失败。例如:

SELECT whatever
FROM TABLE_QUERY(other-public-data:samples,
    "MSEC_TO_TIMESTAMP(creation_time) < DATE_ADD(CURRENT_TIMESTAMP(), -7, 'DAY')") 

可能是因为解释器看到了减法运算。

如果没有“eval”(JavaScript)或“exec”(Python)操作来将字符串转换为变量名,有什么建议可以让它在 BigQuery 中工作吗?

【问题讨论】:

    标签: sql exec eval google-bigquery


    【解决方案1】:

    用 [] 转义:

    SELECT whatever
    FROM TABLE_QUERY([other-public-data:samples],
      "MSEC_TO_TIMESTAMP(creation_time) < DATE_ADD(CURRENT_TIMESTAMP(), -7, 'DAY')")
    

    【讨论】:

    • 漂亮,谢谢费利佩。这行得通!有一次我测试 [] 时,我遇到了一个额外的错误,将其混淆为正确的语法。谢谢!
    猜你喜欢
    • 2014-05-09
    • 1970-01-01
    • 2013-07-08
    • 2021-02-07
    • 2019-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多