--freemarker template 
<#if COSTAGE_STORT?exists && COSTAGE_STORT !="">
<#assign inlineTemplate=COSTAGE_STORT?interpret />
<@inlineTemplate/>
</#if>

delete from costage_st_studienkennzahlen;

insert into costage_st_studienkennzahlen(
 st_skz_nr,
       skz_key,
       unikey,
       fakultaet_key,
       skz_name,
       st_stdfach_nr,
       gesetzliche_grundlage_kb
)
select 
S.st_skz_nr,
S.skz_key,
S.unikey,
S.fakultaet_key,
S.skz_name,
S.st_stdfach_nr,
S.gesetzliche_grundlage_kb
FROM costage_st_studienkennzahlen_neu S, hochschulinfo H
where H.hs_nr::char(10)=S.unikey or S.unikey is null
or 1=0
<#if stort?exists>
<#foreach st in stort>
or S.unikey ='${st.nr}'
</#foreach>
</#if>
 ;
 
<#if stort?exists == false>

--wg. Eindeutigkeit kombinierter Schlüssel SKZ+UNIKEY:
insert into costage_st_studienkennzahlen(
 st_skz_nr,
       skz_key,
       unikey,
       fakultaet_key,
       skz_name,
       st_stdfach_nr,
       gesetzliche_grundlage_kb
)
select 
S.st_skz_nr,
trim(S.skz_key) ||'_' || trim(S.unikey),
S.unikey,
S.fakultaet_key,
S.skz_name,
S.st_stdfach_nr,
S.gesetzliche_grundlage_kb
FROM costage_st_studienkennzahlen_neu S, hochschulinfo H
where H.hs_nr::char(10)!=S.unikey
 ;
</#if>
--TODO: Duplikatssuche bei Fächern ("skz_key").
