1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

BigQueryのWHERE句の順番には気を付けようというお話

Posted at

RDBMSで動かしていたクエリをそのままBigQueryに移行したらなんか遅い…と思って調べたところBigQueryはWHERE句の条件が複数あっても順番は最適化してくれないらしい。

BigQueryのwhere句で複数条件を記載すると上から順番に実行されるので、効率良くデータを絞り込めるように順番を考えてクエリを作らなければパフォーマンスが落ちてしまう。
大事な情報だからもっとわかりやすいところに書いておいてほしい

式の順番が重要: BigQuery は WHERE 句で指定されている式の順序が最適だと想定し、式の順序を変更することはありません。WHERE 句には、最もデータを絞り込むことのできる式を最初に並べる必要があります。

自分の場合はWHERE句の順番を変えることで数分かかっていた処理が数秒ほどで終わるようになりました。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?