まさひlog

趣味で行っていることをのんびりとログとして残していきます

BigQuery ワイルドカードテーブルで正規表現を使って特定テーブルだけ読み込む

BigQueryで特定文字が含まれるテーブルだけのデータを対象にしたかったのでメモ

結論

SELECT * FROM `project.dataset.table*` WHERE REGEXP_CONTAINS(_TABLE_SUFFIX, "ここに文字")

こんな使い方をするかはわからないが
「table_201004、table_201005...table_202104」のように年月毎に分かれたテーブルがあったとき、4月だけを指定したい場合は以下のようになる

SELECT * FROM `project.dataset.table*` WHERE REGEXP_CONTAINS(_TABLE_SUFFIX, "[0-9]{4}04")

参考

cloud.google.com