Advertisement
Guest User

Untitled

a guest
Dec 15th, 2019
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.90 KB | None | 0 0
  1. AS
  2. BEGIN
  3. -- SET NOCOUNT ON added to prevent extra result sets from
  4. -- interfering with SELECT statements.
  5. SET NOCOUNT ON;
  6.  
  7. DECLARE
  8. @ajoneuvoluokka int, @ensirekisterointipvm nvarchar(50), @ajoneuvoryhma int, @ajoneuvonkaytto nvarchar(50), @variantti nvarchar(50), @versio nvarchar(50), @kayttoonottopvm nvarchar(50), @vari int, @ovienLukumaara int, @korityyppi int, @ohjaamotyyppi int, @istumapaikkojenLkm int, @omamassa int, @teknSuurSallKokmassa int, @tieliikSuurSallKokmassa int, @ajonKokPituus int, @ajonLeveys int, @ajonKorkeus int, @kayttovoima int, @iskutilavuus int, @suurinNettoteho int, @sylintereidenLkm int, @ahdin nvarchar(50), @sahkohybridi nvarchar(50), @sahkohybridinluokka int, @merkkiSelvakielinen nvarchar(50), @mallimerkinta nvarchar(50), @vaihteisto nvarchar(50), @vaihteidenLkm int, @kaupallinenNimi nvarchar(50), @voimanvalJaTehostamistapa nvarchar(50), @tyyppihyvaksyntanro nvarchar(50), @yksittaisKayttovoima nvarchar(50), @kunta int, @Co2 int, @matkamittarilukema int, @valmistenumero2 nvarchar(50), @jarnro nvarchar(50),@ajoneuvoluokka2 int, @ajoneuvoryhma2 int, @ajoneuvonkaytto2 nvarchar(50), @vari2 int, @korityyppi2 int, @ohjaamotyyppi2 int, @kayttovoima2 int, @sahkohybridinluokka2 int, @kunta2 int
  9.  
  10. DECLARE HakuCursor CURSOR FOR
  11. SELECT aj.id as ajoneuvoluokka, tt.ensirekisterointipvm as ensirekisterointipvm, ar.ID as ajoneuvoryhmä, tt.ajoneuvonkaytto as ajoneuvonkaytto, tt.variantti as variantti, tt.versio as versio, STUFF(STUFF( tt.kayttoonottopvm,7,0,'-'),5,0,'-') as kayttoonottopvm, vari.ID as vari, tt.ovienLukumaara as ovienLukumaara, kt.ID as korityyppi, ot.ID as ohjaamotyyppi, tt.istumapaikkojenLkm as istumapaikkojenLkm, tt.omamassa as omamassa, tt.teknSuurSallKokmassa as teknSuurSallKokmassa, tt.tieliikSuurSallKokmassa as tieliikSuurSallKokmassa, tt.ajonKokPituus as ajonKokPituus, tt.ajonLeveys as ajonLeveys, tt.ajonKorkeus as ajonKorkeus, kv.ID as kayttovoima, tt.iskutilavuus as iskutilavuus, CONVERT(int ,CONVERT(float, tt.suurinNettoteho)) as suurinNettoteho, tt.sylintereidenLkm as sylintereidenLkm, tt.ahdin as ahdin, tt.sahkohybridi as sahkohybridi, sh.ID as sahkohybridinluokka, tt.merkkiSelvakielinen as merkkiSelvakielinen, tt.mallimerkinta as mallimerkinta, tt.vaihteisto as vaihteisto, tt.vaihteidenLkm as vaihteidenLkm, tt.kaupallinenNimi as kaupallinenNimi, tt.voimanvalJaTehostamistapa as voimanvalJaTehostamistapa, tt.tyyppihyvaksyntanro as tyyppihyvaksyntanro, tt.yksittaisKayttovoima as yksittaisKayttovoima, kunta.ID as kunta, tt.Co2 as Co2, tt.matkamittarilukema as matkamittarilukema, tt.valmistenumero2 as valmistenumero2, tt.jarnro as jarnro
  12. from Temp_table tt
  13. LEFT OUTER JOIN AJONEUVOLUOKKA aj ON aj.KOODINTUNNUS = tt.ajoneuvoluokka
  14. LEFT OUTER JOIN AJONEUVORYHMÄ ar ON ar.ryhma = tt.ajoneuvoryhma
  15. LEFT OUTER JOIN vari vari ON vari.KOODINTUNNUS = tt.vari
  16. LEFT OUTER JOIN KORITYYPPI kt ON kt.KOODINTUNNUS = tt.korityyppi
  17. LEFT OUTER JOIN OHJAAMOTYYPPI ot ON ot.KOODINTUNNUS = tt.ohjaamotyyppi
  18. LEFT OUTER JOIN KAYTTOVOIMA kv ON kv.KOODINTUNNUS = tt.kayttovoima
  19. LEFT OUTER JOIN [sähköhybridin luokka] sh ON sh.koodi = tt.sahkohybridinluokka
  20. LEFT OUTER JOIN kunta kunta ON kunta.KOODINTUNNUS = tt.kunta
  21.  
  22.  
  23. OPEN HakuCursor
  24. FETCH NEXT FROM HakuCursor INTO @ajoneuvoluokka, @ensirekisterointipvm, @ajoneuvoryhma, @ajoneuvonkaytto, @variantti, @versio, @kayttoonottopvm, @vari, @ovienLukumaara, @korityyppi, @ohjaamotyyppi, @istumapaikkojenLkm, @omamassa, @teknSuurSallKokmassa, @tieliikSuurSallKokmassa, @ajonKokPituus, @ajonLeveys, @ajonKorkeus, @kayttovoima, @iskutilavuus, @suurinNettoteho, @sylintereidenLkm, @ahdin, @sahkohybridi, @sahkohybridinluokka, @merkkiSelvakielinen, @mallimerkinta, @vaihteisto, @vaihteidenLkm, @kaupallinenNimi, @voimanvalJaTehostamistapa, @tyyppihyvaksyntanro, @yksittaisKayttovoima, @kunta, @Co2, @matkamittarilukema, @valmistenumero2, @jarnro
  25.  
  26. WHILE @@FETCH_STATUS = 0 BEGIN
  27. -- PRINT 'AJ_Luokka = ' + ISNULL(@aj_luokka, 'TYHJÄ') + ', ensirek=' + ISNULL(@ensirek, 'X') + ', ovienlkm=' + ISNULL(@ovienlkm, '0') + ', aj_luokka_id = ' + CAST(ISNULL(@aj_luokka_id, 0) AS nvarchar(10))
  28. --SELECT CONVERT(date, @ensirekisterointipvm, 101) AS dataconverted
  29. --SELECT CONVERT(date, @kayttoonottopvm, 101)
  30. --SELECT CAST (@ensirekisterointipvm AS date) AS dataconverted
  31. --SELECT CAST (@kayttoonottopvm AS date) AS dataconverted
  32. --SELECT
  33. --CAST(@ensirekisterointipvm AS date),
  34. --CAST(@kayttoonottopvm AS date)
  35. --DECLARE @Date nvarchar(50)
  36. --set @Date= STUFF(STUFF( @kayttoonottopvm,7,0,'-'),5,0,'-')
  37. --SELECT CONVERT(date,LEFT(@Date,4)+SUBSTRING(@Date,5,2)+RIGHT(@Date,2))
  38. --select CONVERT(DATE,CONVERT(varchar(10), @kayttoonottopvm), 111) as date
  39. --23
  40. IF ISDATE(@kayttoonottopvm) = 0
  41. SET @kayttoonottopvm = NULL
  42.  
  43. IF @ajoneuvonkaytto = 'nul'
  44. SET @ajoneuvonkaytto = NULL
  45.  
  46. INSERT INTO Final_table(ajoneuvoluokkaID, ensirekisterointipvm, ajoneuvoryhmaID, ajoneuvonkayttoID, variantti, versio, kayttoonottopvm, variID, ovienLukumaara, korityyppiID, ohjaamotyyppiID, istumapaikkojenLkm, omamassa, teknSuurSallKokmassa, tieliikSuurSallKokmassa, ajonKokPituus, ajonLeveys, ajonKorkeus, kayttovoimaID, iskutilavuus, suurinNettoteho, sylintereidenLkm, ahdin, sahkohybridi, sahkohybridinluokkaID, merkkiSelvakielinen, mallimerkinta, vaihteisto, vaihteidenLkm, kaupallinenNimi, voimanvalJaTehostamistapa, tyyppihyvaksyntanro, yksittaisKayttovoima, kuntaID, Co2, matkamittarilukema, valmistenumero2, jarnro)
  47. VALUES (@ajoneuvoluokka, CAST(@ensirekisterointipvm AS date), @ajoneuvoryhma, @ajoneuvonkaytto, @variantti, @versio, CAST(@kayttoonottopvm AS date), @vari, @ovienLukumaara, @korityyppi, @ohjaamotyyppi, @istumapaikkojenLkm, @omamassa, @teknSuurSallKokmassa, @tieliikSuurSallKokmassa, @ajonKokPituus, @ajonLeveys, @ajonKorkeus, @kayttovoima, @iskutilavuus, @suurinNettoteho, @sylintereidenLkm, @ahdin, @sahkohybridi, @sahkohybridinluokka, @merkkiSelvakielinen, @mallimerkinta, @vaihteisto, @vaihteidenLkm, @kaupallinenNimi, @voimanvalJaTehostamistapa, @tyyppihyvaksyntanro, @yksittaisKayttovoima, @kunta, @Co2, @matkamittarilukema, @valmistenumero2, @jarnro)
  48.  
  49. FETCH NEXT FROM HakuCursor INTO @ajoneuvoluokka, @ensirekisterointipvm, @ajoneuvoryhma, @ajoneuvonkaytto, @variantti, @versio, @kayttoonottopvm, @vari, @ovienLukumaara, @korityyppi, @ohjaamotyyppi, @istumapaikkojenLkm, @omamassa, @teknSuurSallKokmassa, @tieliikSuurSallKokmassa, @ajonKokPituus, @ajonLeveys, @ajonKorkeus, @kayttovoima, @iskutilavuus, @suurinNettoteho, @sylintereidenLkm, @ahdin, @sahkohybridi, @sahkohybridinluokka, @merkkiSelvakielinen, @mallimerkinta, @vaihteisto, @vaihteidenLkm, @kaupallinenNimi, @voimanvalJaTehostamistapa, @tyyppihyvaksyntanro, @yksittaisKayttovoima, @kunta, @Co2, @matkamittarilukema, @valmistenumero2, @jarnro
  50.  
  51. END
  52. UPDATE fINAL_table SET ajoneuvoluokkaID = (SELECT ID from AJONEUVOLUOKKA where KOODINTUNNUS = 'n') WHERE ajoneuvoluokkaID IS NULL
  53. UPDATE fINAL_table SET ajoneuvonkayttoID = (SELECT ID from [AJONEUVON KAYTTO] where KOODINTUNNUS = 'n') WHERE ajoneuvonkayttoID IS NULL
  54. UPDATE fINAL_table SET ajoneuvoryhmaID = (SELECT ID from AJONEUVORYHMÄ where ryhma = 'n') WHERE ajoneuvoryhmaID IS NULL
  55. UPDATE fINAL_table SET kayttovoimaID = (SELECT ID from KAYTTOVOIMA where KOODINTUNNUS = 'n') WHERE kayttovoimaID IS NULL
  56. UPDATE fINAL_table SET korityyppiID = (SELECT ID from KORITYYPPI where KOODINTUNNUS = 'n') WHERE korityyppiID IS NULL
  57. UPDATE fINAL_table SET kuntaID = (SELECT ID from kunta where KOODINTUNNUS = 'n') WHERE kuntaID IS NULL
  58. UPDATE fINAL_table SET ohjaamotyyppiID = (SELECT ID from OHJAAMOTYYPPI where KOODINTUNNUS = 'n') WHERE ohjaamotyyppiID IS NULL
  59. UPDATE fINAL_table SET sahkohybridinluokkaID = (SELECT ID from [sähköhybridin luokka] where koodi = 'n') WHERE sahkohybridinluokkaID IS NULL
  60. UPDATE fINAL_table SET variID = (SELECT ID from VARI where KOODINTUNNUS = 'n') WHERE variID IS NULL
  61.  
  62. CLOSE HakuCursor
  63. DEALLOCATE HakuCursor
  64.  
  65. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement