मैं है दिनांकों (दिन/माह/वर्ष) मेरी डेटाबेस में घटनाओं से मेल खाते के निम्नलिखित सेट के बीच अतिव्यापी दिनांक श्रेणी:गणना लापता तिथि सीमाओं तथा दो तिथियों
eventId startDate endDate 1 02/05/2009 10/05/2009 2 08/05/2009 12/05/2009 3 10/05/2009 12/05/2009 4 21/05/2009 21/05/2009 5 25/05/2009 NULL 6 01/06/2009 03/06/2009
घटनाओं एक आरंभ और समाप्ति तिथि है (समय कोई फर्क नहीं पड़ता) और एक पूर्ण अंतराल का मतलब है कि घटना अभी भी प्रगति पर है।
मैं निर्धारित करने के लिए क्या चाहते हैं दो मनमाना दिनांकों जहां एक था) किसी भी स्थिति और ख) की घटनाओं अतिव्यापी थे के बीच तारीखों के पर्वतमाला है।
no event: 01/04/2009 - 01/05/2009 overlap : 08/05/2009 - 10/05/2009 overlap : 10/05/2009 - 12/05/2009 no event: 13/05/2009 - 20/05/2009 no event: 22/05/2009 - 24/05/2009 overlap : 01/06/2009 - 03/06/2009
ध्यान दें कि दो आसन्न ओवरलैप पर्वतमाला एक के रूप में स्वीकार्य होगा: 30/06/2009 मैं निम्नलिखित परिणाम की उम्मीद करेंगे -
01/04/2009 के एक इनपुट समय अवधि के लिएतो परिणाम।
किसी को भी कृपया मुझे किसी SQL एल्गोरिथ्म इस परिणाम सेट उत्पन्न करने के लिए के साथ मदद कर सकते हैं?
संपादित करें: लक्ष्य मंच डेटाबेस, SQL सर्वर 2005 दिनांक 2009/10/05 00:00:00 के रूप में दर्ज किया जाता है जिसका अर्थ है कि घटना 2009/10/05 00:00:00 और के बीच कुछ समय समाप्त हो गया 10/5/2009 23:59:59। शुरुआत तिथियों के लिए भी यही सच है। इनपुट तिथि सीमा को भी 01/04/2009 00:00:00 - 30/06/2009 23:59:59 के रूप में पढ़ा जा सकता है।
जो डेटाबेस मंच (रों) आप इस क्वेरी चलाने किया जाएगा? –