Прочетох този проблем като търсене на припокриване на диапазони:
така че имате данни в диапазон:T1 до T3. И търси припокриване с диапазон от Т2 до Т4. Тъй като те се припокриват, искате. Въпреки това, ако данните са от T1 до T3 и диапазонът е от T4 до T5 .. няма припокриване, така че не искам.
Можете да направите това с тази заявка:
Select id
from eventos_sapo
where startDate <= '2015-02-14'
AND endDate >= '2013-01-03';
Така че, ако е започнало след дадена дата (14 февруари 2015 г.), не го включвайте. или ако е приключило преди 3 януари 2013 г. ... не го включвайте. Включете всичко останало, тъй като се припокрива:
Като 1 пример:Данните приключват след дадената начална дата на диапазона, а началната дата на данните е преди края, така че това е един от следните случаи:
Data: |---|
Given range: |---|
Data: |-------|
Given range: |---|
Data: |---|
Given range: |---|
Data: |---|
Given range: |-------|