😊
[BigQuery] UNNEST関数で配列から一時テーブルを作る
tl,dr
UNNEST関数を使うと [1,2,3,4,5]
みたいな配列から簡単にテーブルが作れる
入力
select num
from unnest([5,1,3]) AS num
order by num
出力
行 | num |
---|---|
1 | 1 |
2 | 3 |
3 | 5 |
背景とか
テストやらなんやらで手元の配列からテーブルにして、それに対してクエリを実行したい時ってありますよね。そんな時従来のSQLだと以下の様になると思うんですが、使いづらいですよね。そんな時unnest関数を使うと簡単にテーブルが作れて楽ですね、という話です。
よくあるやり方
select *
from (
select 5 as num
UNION ALL
select 1 as num
UNION ALL
select 3 as num
) order by num
Discussion