मैंने इस समस्या को श्रेणियों के ओवरलैप की तलाश के रूप में पढ़ा:
तो आपके पास सीमा में डेटा है:टी 1 से टी 3। और T2 से T4 की सीमा के साथ ओवरलैप की तलाश कर रहे हैं। चूंकि वे ओवरलैप करते हैं, आप चाहते हैं। हालांकि, यदि डेटा 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: |-------|