获取BigQuery外部表的GCS路径元数据

问题描述

使用永久外部表查询Cloud Storage数据时,

CREATE OR REPLACE EXTERNAL TABLE mydataset.sales
OPTIONS (
  format = 'CSV',uris = ['gs://mybucket/sales-google.csv','gs://mybucket/sales-microsoft.csv']
)

是否有办法知道从哪个文件提取行?元数据?

SELECT * FROM mydataset.sales

解决方法

您可以使用此处概述的_FILE_NAME伪列:

https://cloud.google.com/bigquery/external-data-drive#the_file_name_pseudo_column

,

使用_FIE_NAME伪列:

SELECT 
  *,_FILE_NAME AS file_name
FROM mydataset.sales