BigQuery - TABLE_DATE_RANGE() 函数问题
BigQuery - Issue with TABLE_DATE_RANGE() function
背景:
我在 BigQuery 上有两个数据集。
数据集 1 命名为“12345678”,其中 table 个名称为 'ga_sessions_yyyymmdd'。例如,table 名称如 ga_sessions_20140721、ga_sessions_20150413 等
数据集 2 被命名为 'DestinationTables'。 table 的名称格式为 yyyymmdd。例如20140721、20150413等
问题:
使用 TABLE_DATE_RANGE(),我 运行 在 数据集 1 上执行以下查询:
SELECT
[fullVisitorId] AS [fullVisitorId]
FROM TABLE_DATE_RANGE([12345678.ga_sessions_],TIMESTAMP('2014-07-21'),TIMESTAMP('2014-07-25'));
本次查询成功运行s.
我现在 运行 在 数据集 2 上进行类似查询:
SELECT
[fullVisitorId] AS [fullVisitorId]
FROM TABLE_DATE_RANGE([DestinationTables.],TIMESTAMP('2014-07-21'),TIMESTAMP('2014-07-25'));
但是,此错误会显示以下消息:
Error: Can't parse table: DestinationTables
为什么会这样?对此有任何见解将不胜感激。
提前致谢!
第一个示例中用于识别数据集的语法和 table 前缀是正确的:
[12345678.ga_sessions_]
并且如 the docs for this function 中所述,它将扩展以涵盖格式为 table 的(在数据集 12345678 中):
ga_sessions_yyyymmdd
但是,在您的第二个示例中,标识符仅以一个点结束,它应该继续识别 table 前缀。我认为问题在于您没有前缀,因此字符串末尾的裸点混淆了解释器。
您可能需要将您的 table 更改为具有某种前缀,即使它只是一个下划线,以便您可以在调用 TABLE_DATE_RANGE
[=14= 时正确指定前缀]
背景:
我在 BigQuery 上有两个数据集。
数据集 1 命名为“12345678”,其中 table 个名称为 'ga_sessions_yyyymmdd'。例如,table 名称如 ga_sessions_20140721、ga_sessions_20150413 等
数据集 2 被命名为 'DestinationTables'。 table 的名称格式为 yyyymmdd。例如20140721、20150413等
问题:
使用 TABLE_DATE_RANGE(),我 运行 在 数据集 1 上执行以下查询:
SELECT
[fullVisitorId] AS [fullVisitorId]
FROM TABLE_DATE_RANGE([12345678.ga_sessions_],TIMESTAMP('2014-07-21'),TIMESTAMP('2014-07-25'));
本次查询成功运行s.
我现在 运行 在 数据集 2 上进行类似查询:
SELECT
[fullVisitorId] AS [fullVisitorId]
FROM TABLE_DATE_RANGE([DestinationTables.],TIMESTAMP('2014-07-21'),TIMESTAMP('2014-07-25'));
但是,此错误会显示以下消息:
Error: Can't parse table: DestinationTables
为什么会这样?对此有任何见解将不胜感激。
提前致谢!
第一个示例中用于识别数据集的语法和 table 前缀是正确的:
[12345678.ga_sessions_]
并且如 the docs for this function 中所述,它将扩展以涵盖格式为 table 的(在数据集 12345678 中):
ga_sessions_yyyymmdd
但是,在您的第二个示例中,标识符仅以一个点结束,它应该继续识别 table 前缀。我认为问题在于您没有前缀,因此字符串末尾的裸点混淆了解释器。
您可能需要将您的 table 更改为具有某种前缀,即使它只是一个下划线,以便您可以在调用 TABLE_DATE_RANGE
[=14= 时正确指定前缀]