Vaihtojaksojen vaikutus tutkintojen suoritusaikaan muuttujat:

MuutujaSelite
vaihdossa_lyhyt0=ei, 1=kyllä. Lyhyt vaihto vähintään 5 ja alle 87 päivää
vaihdossa_pitka0=ei, 1=kyllä. Pitkä vaihto vähintään 87 päivää    
vaihdossa_blended0=ei, 1=kyllä. Blended = liikkuvuusjaksoon liittyy virtuaalista liikkuvuutta. Fyysiseen liikkuvuusjaksoon yhdistyy virtuaalinen osio.
vaihdon_kesto_paivissakv-vaihdon kesto päivissä tutkinnon suoritusajalta


Pitkä vaihto 

Pitka 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

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


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ä

Vaihdon kesto
--  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




  • No labels