समय-श्रृंखला डेटा का विश्लेषण करने के लिए अक्सर डेटा को विशिष्ट अंतराल में समूहीकृत करने की आवश्यकता होती है। यह गाइड दर्शाता है कि एसक्यूएल का उपयोग करके 5-मिनट के अंतराल में डेटा को कैसे समूहित किया जाए, एक परिदृश्य को संबोधित किया जाए जहां डेटा को एक परिभाषित समय सीमा के भीतर एकत्र करने की आवश्यकता होती है। उदाहरण 'टाइम' और 'आईडी' टेबल से डेटा का उपयोग करता है, 'जॉन' नाम की घटनाओं की गिनती करता है। चुनौती व्यक्तिगत टाइमस्टैम्प समूह से 5-मिनट के अंतराल एकत्रीकरण तक जाने में निहित है।
विभिन्न डेटाबेस सिस्टम के लिए समाधानआपके डेटाबेस सिस्टम के आधार पर इष्टतम दृष्टिकोण भिन्न होता है। यहाँ postgresql और mysql के लिए समाधान हैं:
] ] चुनना date_trunc ('मिनट', टाइमस्टैम्प) अंतराल '5 मिनट' * (एक्सट्रैक्ट (टाइमस्टैम्प से मिनट) :: int / 5) के रूप में। नाम, गिनती (B.Name) समय से, आईडी बी कहाँ ... - आपका कहाँ खंड यहाँ है पांच_minute_interval द्वारा समूह, नाम पांच_minute_interval द्वारा आदेश;
] फिर, यह मूल टाइमस्टैम्प के मिनट के आधार पर 5 मिनट के गुणकों को जोड़कर 5 मिनट के अंतराल की गणना करता है।
mysql
]चुनना
From_unixtime (फ़्लोर (UNIX_TIMESTAMP (टाइमस्टैम्प) / 300) * 300) के रूप में पांच_minute_interval,
नाम,
गिनती (B.Name)
समय से, आईडी बी
कहाँ ... - आपका कहाँ खंड यहाँ है
पांच_minute_interval द्वारा समूह, नाम
पांच_minute_interval द्वारा आदेश;
]
अपने विशिष्ट
SELECT
date_trunc('minute', timestamp) INTERVAL '5 minutes' * (extract(minute from timestamp)::int / 5) AS five_minute_interval,
name,
COUNT(b.name)
FROM time a, id b
WHERE ... -- Your WHERE clause here
GROUP BY five_minute_interval, name
ORDER BY five_minute_interval;
क्लॉज परिणामों की कालानुक्रमिक प्रस्तुति सुनिश्चित करता है। अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3