Ik breek mijn hoofd op dit moment over een query die ik moet maken. Heb niet zo veel ervaring met handmatig SQL programmeren. Wel met Access e.d.
Het volgende vraagstuk houdt me bezig. Iemand een idee hoe je dit met SQL zou kunnen doen ;
Ik heb een tabel met klantcontracten (zo zal ik het maar noemen).
Nu zijn de belangrijkste velden hiervan:
Klantnr,
Financieringsnr.
ContractGeldigVanaf,
ContractGeldigtm
Nu moet ik het volgende voor elkaar krijgen. Zoek in deze tabel de klanten op die een contract hebben waarbij ze een overlap hebben in contractGeldigVanaf t/m contractGeldigtm en waarbij de financieringsnummers verschillend zijn.
B.v.
1. Klant A heeft Financieringsnr: 3 en een geldigheid van 1-1-2009 t/m 1-5-2009
2. Klant A heeft Financieringsnr: 5 en een geldheid van 1-3-2009 t/m 1-12-2009
3. Klant A heeft Financieringsnr : 3 en een geldigheid van 1-6-2009 t/m 1-1-2010
Nu gaat het mij erom om dan records te zoeken waarbij in dezelfde periode dezelfde klant meerdere contracten heeft met verschillende financieringsnummers.
In bovenstaande voorbeeld geldt dus dat dan regel 1 en 2 gevonden en getoond worden.
Ik heb al zitten puzzelen met innerjoins op dezelfde tabel, met de EXIST operator enz maar kom er niet uit. Kan iemand mij helpen ?
Groet Cees
Het volgende vraagstuk houdt me bezig. Iemand een idee hoe je dit met SQL zou kunnen doen ;
Ik heb een tabel met klantcontracten (zo zal ik het maar noemen).
Nu zijn de belangrijkste velden hiervan:
Klantnr,
Financieringsnr.
ContractGeldigVanaf,
ContractGeldigtm
Nu moet ik het volgende voor elkaar krijgen. Zoek in deze tabel de klanten op die een contract hebben waarbij ze een overlap hebben in contractGeldigVanaf t/m contractGeldigtm en waarbij de financieringsnummers verschillend zijn.
B.v.
1. Klant A heeft Financieringsnr: 3 en een geldigheid van 1-1-2009 t/m 1-5-2009
2. Klant A heeft Financieringsnr: 5 en een geldheid van 1-3-2009 t/m 1-12-2009
3. Klant A heeft Financieringsnr : 3 en een geldigheid van 1-6-2009 t/m 1-1-2010
Nu gaat het mij erom om dan records te zoeken waarbij in dezelfde periode dezelfde klant meerdere contracten heeft met verschillende financieringsnummers.
In bovenstaande voorbeeld geldt dus dat dan regel 1 en 2 gevonden en getoond worden.
Ik heb al zitten puzzelen met innerjoins op dezelfde tabel, met de EXIST operator enz maar kom er niet uit. Kan iemand mij helpen ?
Groet Cees