Jag läser det här problemet som att jag letar efter överlappning av intervall:
så du har data inom intervallet:T1 till T3. Och letar efter överlappning med intervall T2 till T4. Eftersom de överlappar, vill du. Men om data är T1 till T3 och intervallet är T4 till T5 .. ingen överlappning så vill inte.
Du kan göra det med den här frågan:
Select id
from eventos_sapo
where startDate <= '2015-02-14'
AND endDate >= '2013-01-03';
Så om det började efter det angivna datumet (14 februari 2015), inkludera det inte. eller om det slutade före 3 januari 2013 ... inkludera det inte. Inkludera allt annat eftersom det överlappar:
Som ett exempel:Data slutar efter det givna startdatumet för intervallet och datastartdatumet är före slutet, så det är ett av följande fall:
Data: |---|
Given range: |---|
Data: |-------|
Given range: |---|
Data: |---|
Given range: |---|
Data: |---|
Given range: |-------|