Jeg læser dette problem som at lede efter overlapning af intervaller:
så du har data i området:T1 til T3. Og leder efter overlap med området T2 til T4. Da de overlapper, vil du have. Men hvis data er T1 til T3 og rækkevidde er T4 til T5 .. ingen overlapning, så ønsker ikke.
Du kan gøre det med denne forespørgsel:
Select id
from eventos_sapo
where startDate <= '2015-02-14'
AND endDate >= '2013-01-03';
Så hvis det startede efter den givne dato (14. februar 2015), skal du ikke inkludere det. eller hvis det sluttede før 3. januar 2013 ... medtag det ikke. Medtag alt andet, da det overlapper:
Som 1 eksempel:Data slutter efter den givne startdato for interval, og dataens startdato er før slutdatoen, så det er et af følgende tilfælde:
Data: |---|
Given range: |---|
Data: |-------|
Given range: |---|
Data: |---|
Given range: |---|
Data: |---|
Given range: |-------|