Article Outline
🔍 疑似中間テーブル作成
TOC
Collection Outline
句(節)
演算子
関数
入門 @Udemy
DS100ノック
ML
アクセス解析
|| よく出るコイツ
Resources exceeded during query execution: Not enough resources for query planning - too many subqueries or query is too complex
WITH句を多用していたり、ビューの多段が10個近くになってくるとこのエラーがよく発生することが多いです*2。
と、参考にしたすごい人も言っている。
|| 解決策!疑似的中間テーブル作成
| テンポラリーテーブル作成
CREATE TEMP TABLE {テーブル名} ({処理});
| クエリ
-- EXTRACTED中間テーブル作成(疑似的入れ物)
create temp table EXTRACTED (
COMMIT string
, TREE string
);
-- 中間テーブルに入れ込むデータ
insert into EXTRACTED
select COMMIT, TREE from `bigquery-public-data.github_repos.sample_commits` limit 10;
-- 中間テーブルにアクセス
select * from EXTRACTED;
| うれしいこと
- サブクエリ多様で、処理落ちすることを回避できる。(エラー回避)
- エラー回避で、都度中間テーブルとして保存していたデータを作成しなくて済む。(データプランク化回避)
- 一時テーブルであるため、BigQueryが削除をやってくれる。 作っては後で消して、を手作業でしていた。(消し忘れて上司に「ゴミはゴミ箱へ!」とよく言われたもの...)