ik heb twee systemen. systeem a levert een rapport die ik importeer in systeem b. ik heb geen invloed op systeem a en moet dan ook de geleverde data aannemen AS IS. systeem b is mijn systeem waar ik importeer en bewerk
in het rapport van systeem a staan orders. elk record is een regel van een order en bevat de velden order nummer , orderlijn en de rest van de info. de order nummer en lijn zijn gezamelijk uniek. de rest van de gegevens wijzigen soms. ik wil deze geimporteerde data in een tabel zetten wat prima lukt. vervolgens wil ik het volgende rapport kunnen importeren waarbij hij nieuwe gegevens toevoegd en bestaande gegevens updated. hiervoor gebruik ik het sql update comando. ik wil hier een selectie maken dmv joins om de velden ordernummer te koppelen en de velden lijn te koppelen vervolgens updaten waar ze gelijk zijn.
met een gelijk veld lukt mij wel maar met twee kom ik niet uit. wie weet raad
1e import (alles is nieuw dus alles importeren)
122,1,data
123,1,data
123,2,data2
124,1,data
2e import(1 en 2 zijn gewijzigd dus bijwerken, 4 is nieuw dus toevoegen)
123,1,newdata
123,2,newdata2
124,1,data
124,2,data
resulataat na 2e import (update record 2 en 3 en voeg toe record 5)
122,1,data
123,1,newdata
123,2,newdata2
124,1,data
124,2,data
welke query gebruik ik hiervoor. heb ik een dubbele join nodig? hoe doe ik dat dan? kan het anders?
in het rapport van systeem a staan orders. elk record is een regel van een order en bevat de velden order nummer , orderlijn en de rest van de info. de order nummer en lijn zijn gezamelijk uniek. de rest van de gegevens wijzigen soms. ik wil deze geimporteerde data in een tabel zetten wat prima lukt. vervolgens wil ik het volgende rapport kunnen importeren waarbij hij nieuwe gegevens toevoegd en bestaande gegevens updated. hiervoor gebruik ik het sql update comando. ik wil hier een selectie maken dmv joins om de velden ordernummer te koppelen en de velden lijn te koppelen vervolgens updaten waar ze gelijk zijn.
met een gelijk veld lukt mij wel maar met twee kom ik niet uit. wie weet raad
Code:
CREATE TABLE [dbo].[Brontabel](
[RECORDOUT UID] [varchar](255) NULL,
[LINE] int NULL,
[data] [varchar] (255) null
) ON [PRIMARY]
CREATE TABLE [dbo].[Doeltabel](
[doelRecordoutUid] [varchar](255) NULL,
[LINE] int NULL,
[data] [varchar] (255) null
1e import (alles is nieuw dus alles importeren)
122,1,data
123,1,data
123,2,data2
124,1,data
2e import(1 en 2 zijn gewijzigd dus bijwerken, 4 is nieuw dus toevoegen)
123,1,newdata
123,2,newdata2
124,1,data
124,2,data
resulataat na 2e import (update record 2 en 3 en voeg toe record 5)
122,1,data
123,1,newdata
123,2,newdata2
124,1,data
124,2,data
welke query gebruik ik hiervoor. heb ik een dubbele join nodig? hoe doe ik dat dan? kan het anders?
Laatst bewerkt: