postgresql - SQL Average Inter-arrival Time, Time Between Dates -


मेरे पास अनुक्रमिक टाइमस्टैम्प के साथ एक टेबल है:

2011-03-17 10:31:19 < / P>

2011-03-17 10:45:49

2011-03-17 10:47:49 ...

मुझे औसत समय खोजने की आवश्यकता है इनमें से प्रत्येक के बीच का अंतर (दर्जनों हो सकता है) सेकंड में या जो कुछ भी आसान है, मैं इसके साथ वहां से काम कर सकता हूं। इसलिए उदाहरण के लिए केवल पहले दो बार के लिए उप-आगमन का समय 870 (14 मी 30) होगा। सभी तीन बार यह होगा: (870 + 120) / 2 = 445 (7 मी 25 एस)।

एक नोट, मैं postgreSQL 8.1.22 का उपयोग कर रहा हूं।

संपादित करें: तालिका जो मैंने ऊपर उल्लेख किया है वह एक अलग क्वेरी से है जो कि वाकई टाइमस्टैंप की एक एक-स्तंभ सूची है

नहीं यकीन है कि मैं पूरी तरह से आपके प्रश्न को समझता हूं, लेकिन यह हो सकता है कि आप क्या चाहते हैं:

 SELECT avg (अंतर) से (SELECT timestamp_col - lag (timestamp_col) से अधिक (timestamp_col द्वारा क्रम) आपके_table से)  

आंतरिक क्वेरी प्रत्येक पंक्ति और पूर्ववर्ती पंक्ति के बीच की दूरी की गणना करती है परिणाम तालिका में प्रत्येक पंक्ति के लिए एक अंतराल है।

बाहरी क्वेरी में बस सभी मतभेदों पर औसत होता है।

Comments