找不到 Datastudio 列名
Datastudio Column Name not found
我不得不转移我的一些 Google BigQuery 表,现在一些 datastudio 仪表板不再工作了。我检查了 Datastudio 运行的查询。它这样做:
SELECT t0.column, SUM(t0.value) AS t0_qt_weezwy5dnb FROM
(SELECT * FROM `table_*` WHERE _TABLE_SUFFIX BETWEEN '20180726' AND '20180726')
AS t0 GROUP BY t0.column ORDER BY t0.column DESC;
但它给我错误 "Name column not found inside t0"。我在查询中的这个日期中肯定有该列。还有其他表格,日期较早,但没有该列。但是,当我只查看那个日期时,这不应该影响结果。在我重新命名表格之前它曾经工作过。
有人知道如何解决它吗?
这是您使用 _TABLE_SUFFIX
时的常见问题。所有表都必须具有相同的架构。查询需要编译。
所以较早的表格也必须有 'name'。您可以修补这些表并向其添加 'name' 。您甚至可以修补由任何自动导出工具为您创建的表:analytics、firebase、billing export。
BigQuery 使用与通配符匹配的最近创建的 table 的架构作为通配符 table.
的架构
注意:之后应用 WHERE 子句,因此您的情况下的架构不是来自 WHERE 子句中日期的 table - 根本不是
要解决此问题 - 您可以使用匹配的 table 名称和您期望的模式创建新的空 table。当然,这将一直有效,直到您使用缺少该列
的模式创建了新的 table
因此,最好的方法是在 "family" 个 table 中保持一致的架构 - table 具有您希望以这种方式查询的类似名称 _TABLE_SUFFIX
我不得不转移我的一些 Google BigQuery 表,现在一些 datastudio 仪表板不再工作了。我检查了 Datastudio 运行的查询。它这样做:
SELECT t0.column, SUM(t0.value) AS t0_qt_weezwy5dnb FROM
(SELECT * FROM `table_*` WHERE _TABLE_SUFFIX BETWEEN '20180726' AND '20180726')
AS t0 GROUP BY t0.column ORDER BY t0.column DESC;
但它给我错误 "Name column not found inside t0"。我在查询中的这个日期中肯定有该列。还有其他表格,日期较早,但没有该列。但是,当我只查看那个日期时,这不应该影响结果。在我重新命名表格之前它曾经工作过。
有人知道如何解决它吗?
这是您使用 _TABLE_SUFFIX
时的常见问题。所有表都必须具有相同的架构。查询需要编译。
所以较早的表格也必须有 'name'。您可以修补这些表并向其添加 'name' 。您甚至可以修补由任何自动导出工具为您创建的表:analytics、firebase、billing export。
BigQuery 使用与通配符匹配的最近创建的 table 的架构作为通配符 table.
的架构
注意:之后应用 WHERE 子句,因此您的情况下的架构不是来自 WHERE 子句中日期的 table - 根本不是
要解决此问题 - 您可以使用匹配的 table 名称和您期望的模式创建新的空 table。当然,这将一直有效,直到您使用缺少该列
的模式创建了新的 table因此,最好的方法是在 "family" 个 table 中保持一致的架构 - table 具有您希望以这种方式查询的类似名称 _TABLE_SUFFIX