Vaihtojaksojen vaikutus tutkintojen suoritusaikaan muuttujat:
Muutuja | Selite |
---|
vaihdossa_lyhyt | 0=ei, 1=kyllä. Lyhyt vaihto vähintään 5 ja alle 87 päivää |
vaihdossa_pitka | 0=ei, 1=kyllä. Pitkä vaihto vähintään 87 päivää |
vaihdossa_blended | 0=ei, 1=kyllä. Blended = liikkuvuusjaksoon liittyy virtuaalista liikkuvuutta. Fyysiseen liikkuvuusjaksoon yhdistyy virtuaalinen osio. |
vaihdon_kesto_paivissa | kv-vaihdon kesto päivissä tutkinnon suoritusajalta |
Pitkä vaihto
UPDATE T
SET T.vaihdossa_pitka = 1
FROM [TavoiteAika].[dbo].[Tavoiteajassa_valmistuneet] T
WHERE T.opiskelijaAvain IN (
SELECT O.Avain
FROM virta.dbo.Liikkuvuusjakso LJ
INNER JOIN virta.dbo.Opiskelija O ON O.id = LJ.OpiskelijaID
WHERE O.db = T.kk
-- suunta 1=Lähtevä
and 1 = (select top 1 k.Koodi from virta.dbo.Liikkuvuuden_suunta k where k.ID=lj.Liikkuvuuden_suuntaID)
-- vähintään 87 päivää
and 87 <= coalesce(DATEDIFF(day,lj.Alkamispaivamaara,lj.Paattymispaivamaara),9999) +1 -- alku- ja loppupvm kuuluu mukaan
-- tilastovuosi
and lj.Alkamispaivamaara < T.tutkinnonsuorituspvm -- EI ennen suoritettua tutkintoa
and lj.Alkamispaivamaara >= T.Alkamispvm -- Kyseisen tutkinnon suoritusaikana
)
Lyhyt vaihto
UPDATE T
SET T.vaihdossa_lyhyt = 1
FROM [TavoiteAika].[dbo].[Tavoiteajassa_valmistuneet] T
WHERE T.opiskelijaAvain IN (
SELECT O.Avain
FROM virta.dbo.Liikkuvuusjakso LJ
INNER JOIN virta.dbo.Opiskelija O ON O.id = LJ.OpiskelijaID
WHERE O.db = T.kk
-- suunta 1=Lähtevä
and 1 = (select top 1 k.Koodi from virta.dbo.Liikkuvuuden_suunta k where k.ID=lj.Liikkuvuuden_suuntaID)
-- vähintään [5,7] ja enintään 86 päivää
and coalesce(DATEDIFF(day,lj.Alkamispaivamaara,lj.Paattymispaivamaara),9999) +1 -- alku- ja loppupvm kuuluu mukaan
between 5 and 86
-- tilastovuosi
and lj.Alkamispaivamaara < T.tutkinnonsuorituspvm -- EI ennen suoritettua tutkintoa
and lj.Alkamispaivamaara >= T.Alkamispvm -- Kyseisen tutkinnon suoritusaikana
)
Blended
UPDATE T
SET T.vaihdossa_virtuaalinen_blended = 1
FROM [TavoiteAika].[dbo].[Tavoiteajassa_valmistuneet] T
WHERE T.opiskelijaAvain IN (
SELECT O.Avain
FROM virta.dbo.Liikkuvuusjakso LJ
INNER JOIN virta.dbo.Opiskelija O ON O.id = LJ.OpiskelijaID
INNER JOIN virta.dbo.Liik_jaks_liittyva_luokittelu LLL ON LLL.LiikkuvuusjaksoID = LJ.id
INNER JOIN virta.dbo.Liikkuvuuden_luokittelu LL ON LL.id = LLL.Liikkuvuuden_luokitteluID
WHERE O.db = T.kk
AND LL.Koodi = 'b' -- Blended (sisältää virtuaalista)
-- tilastovuosi
and lj.Alkamispaivamaara < T.tutkinnonsuorituspvm -- EI ennen suoritettua tutkintoa
and lj.Alkamispaivamaara >= T.Alkamispvm -- Kyseisen tutkinnon suoritusaikana
)
kv-vaihdon kesto päivissä
-- Lasketaan yhteen kv-vaihdon kesto päivissä tutkinnon suoritusajalta
SELECT SUM(DATEDIFF(day,lj.Alkamispaivamaara,lj.Paattymispaivamaara)+1) pv, O.avain AS OpiskelijaAvain, T.kk, T.opintosuoritusAvain
INTO #kvKesto
FROM virta.dbo.Liikkuvuusjakso LJ
INNER JOIN virta.dbo.Opiskelija O ON O.id = LJ.OpiskelijaID
INNER JOIN TavoiteAika.dbo.Tavoiteajassa_valmistuneet T ON T.opiskelijaAvain = O.Avain
WHERE LJ.db = O.db
AND T.kk = LJ.db
AND LJ.Alkamispaivamaara >= T.Alkamispvm
AND LJ.Alkamispaivamaara <= T.tutkinnonsuorituspvm
GROUP BY O.avain, T.kk, T.opintosuoritusAvain
ORDER BY pv DESC
-- Vaihdon kesto päivissä lisätiedoksi
UPDATE T
SET T.vaihdon_kesto_paivissa = K.pv
--SELECT K.pv, *
FROM TavoiteAika.dbo.Tavoiteajassa_valmistuneet T
INNER JOIN #kvKesto K ON K.opintosuoritusAvain = T.opintosuoritusAvain AND K.kk = T.kk AND K.OpiskelijaAvain = T.opiskelijaAvain
WHERE K.opintosuoritusAvain = T.opintosuoritusAvain AND K.kk = T.kk AND K.OpiskelijaAvain = T.opiskelijaAvain