मेरे पास एक श्रृंखला है (आईपी वर्कर (15), डेटटाइम डेटाटाइम 2) मान। प्रत्येक पंक्ति उपयोगकर्ता द्वारा किए गए HTTP अनुरोध से मेल खाती है। मैं इन पंक्तियों में सत्र संख्या असाइन करना चाहता हूं। विभिन्न आईपी पते में अलग-अलग सत्र संख्याएं होती हैं। यदि अंतिम अनुरोध 30min से पुराना है तो एक ही आईपी को एक नया सत्र संख्या असाइन किया जाना चाहिए।एसक्यूएल सर्वर: row_number timout द्वारा विभाजित
IP, DateTime, SessionNumber, RequestNumber
1.1.1.1, 2012-01-01 00:01, 1, 1
1.1.1.1, 2012-01-01 00:02, 1, 2
1.1.1.1, 2012-01-01 00:03, 1, 3
1.1.1.2, 2012-01-01 00:04, 2, 1 --different IP => new session number
1.1.1.2, 2012-01-01 00:05, 2, 2
1.1.1.2, 2012-01-01 00:40, 3, 1 --same IP, but last request 35min ago (> 30min)
कॉलम 1 और 2 आदानों, 3 और 4 वांछित outputs रहे हैं: यहां एक नमूना उत्पादन होता है। तालिका दो उपयोगकर्ताओं को दिखाती है।
अंतर्निहित तालिका तालिका काफी बड़ी है, इसे कुशलता से हल किया जा सकता है? मैं डेटा (एक या दो) पर पास की एक छोटी निरंतर राशि पसंद करूंगा।
SQL सर्वर का कौन सा संस्करण? यदि 2012 नई 'ओवर' क्लॉज कार्यक्षमता मदद करेगा। –
हां, यह SQL सर्वर 2012 है। – usr