我正在尝试使用撇号旋转一列,但这在 DBT 中非常困难。有任何想法吗?我尝试了双引号,但 dbt 没有选择它,我不能在数据透视表中使用 like 语句。
{% set pvt_details=[
('General liability cover_rated_premium' , 'gl_premium')
, ('Contractors' errors and omissions cover_rated_premium','eo_premium') ] %}
WITH filtered AS (
SELECT
quote_id
, target
, premium_after_amount
from {{ source('acdc', 'chopin_quote_rating_steps') }} cqrs
WHERE target IN ({% for column in pvt_details %} '{{column[0]}}' {%- if not loop.last -%}
, {%- endif %}
{% endfor %})
AND action = 'initial_premium'
)
select *
from filtered
pivot(sum(premium_after_amount)
for target in ({% for column in pvt_details %} '{{column[0]}}' {%- if not loop.last -%} ,
{%- endif %}
{% endfor %}))
as p (quote_id,
{% for column in pvt_details %} {{column[1]}} {%- if not loop.last -%} , {%- endif
%}
{% endfor %})