sql - Only Last Date Result per Order? How? -
तो मूल रूप से मुझे यह तालिका मिली
OrderID | ChangeDate | ------- | ----------------------- | ऑर्डर 1 | 2013-03-17 14: 40: 47.000 | ऑर्डर 1 | 2013-03-20 16: 09: 09.000 | ऑर्डर 2 | 2013-03-12 12: 34: 09.000 | ऑर्डर 3 | 2013-03-20 18: 30: 12.000 | ऑर्डर 2 | 2013-03-20 12: 39: 49.000 | मैं क्या चाहता हूँ और इसकी आवश्यकता है, केवल प्रत्येक ऑर्डरआइडी का सबसे ऊपर है, (अभी मैं लगभग 28000 परिणाम [संपूर्ण तालिका] प्रत्येक ऑर्डर के साथ 100 गुणा या इतने पर प्राप्त कर रहा हूं) मुझे सबसे ऊपर की एक सूची (अंतिम परिवर्तन की तारीख) की वर्तमान कड़ी है जिसकी मुझे कुछ ऐसा दिखता है:
चुनें a.AuftragID, a.Kunde, अधिकतम (ChangeDate) आदेश से O इनरजिइन factTable O.OrderID = F.OrderID समूह द्वारा a.AuftragID, a.Kunde मैं केवल शीर्ष क्रम के रूप में प्राप्त करने के लिए क्या कर सकता हूँ (नवीनतम परिवर्तन तिथि परिणाम) प्रति आदेश हमेशा की तरह, बहुत आपकी मदद के लिए धन्यवाद!
का प्रयोग करें ROW_NUMBER : <कोड> सीटीए के साथ (SELECT F.auftragid, F.kunde, changeate, rn = Row_number ()) (ऑडर्र ऑर्डर द्वारा ऑर्डर्ड ऑर्डर द्वारा डीईएससी बदल दिया गया है) ऑर्डर से इन इन्ननेर एफ ऑन ऑर्डरसिड = एफ ऑडियड) का चयन करें एयूएफट्रैगिड, कुंडे, से सीटीई WHERE rn = 1 (ध्यान दें कि मैंने अनुमान लगाया है कि आपके नमूना क्वेरी में उपनाम एक प्रकार है Nd a वास्तव में f )
Comments
Post a Comment