- 1つのテーブルにkeyとvalが複数あって、それを縦に並べたいときがあるので、組み合わせを定義しといて、あとはunionで繋げるときのサンプル。
{% set dict =
{'column_key_1': 'column_val_1',
'column_key_2': 'column_val_2'}
%}
select
0 AS column_key,
'test' AS column_val
{% for key, val in dict.items() %}
union
select
{{ key }} AS column_key,
{{ val }} AS column_val,
from {{ ref('hoge_table') }}
{% endfor %}
- n回繰り返すサンプル
(YYYY-MMを現在の日時から5回遡っていくサンプル)
select TO_CHAR(current_date(),'YYYY-MM') AS yyyymm
{% for i in range(-1,-5,-1) %}
union
select TO_CHAR(DATEADD(MONTH, {{i}} ,current_date()),'YYYY-MM') AS yyyymm
{% endfor %}