我正在使用wildcard query在bigquery中查询一堆表。我希望每个结果行都能显示它来自哪个表。
我尝试将_TABLE_SUFFIX
包含在选择中,但不会编译:
SELECT _TABLE_SUFFIX, *
FROM `foo.bar_*`
WHERE x = ...
无效的字段名称“ _TABLE_SUFFIX”
答案 0 :(得分:1)
使用别名,如下面的示例
SELECT _TABLE_SUFFIX as table_name, *
FROM `foo.bar_*`
WHERE x = ...
您还可以在下面使用它来保留完整的表名
SELECT CONCAT('bar_', _TABLE_SUFFIX) as table_name, *
FROM `foo.bar_*`
WHERE x = ...
还请注意:字段名称不允许以(不区分大小写)前缀_PARTITION, TABLE , FILE 和_ROW_TIMESTAMP
开头