Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

प्रत्येक N . के लिए नवीनतम रिकॉर्ड के लिए इष्टतम प्रदर्शन करने वाली क्वेरी

आपके डेटा पर निर्भर करता है (प्रति समूह कितनी पंक्तियां हैं?) और आपकी अनुक्रमणिका।

देखें टॉप एन प्रति ग्रुप क्वेरीज़ को ऑप्टिमाइज़ करना 3 दृष्टिकोणों की कुछ प्रदर्शन तुलनाओं के लिए।

आपके मामले में केवल कुछ ही वाहनों के लिए लाखों पंक्तियों के साथ मैं VehicleID, Timestamp पर एक अनुक्रमणिका जोड़ूंगा और करो

SELECT CA.*
FROM   Vehicles V
       CROSS APPLY (SELECT TOP 1 *
                    FROM   ChannelValue CV
                    WHERE  CV.VehicleID = V.VehicleID
                    ORDER  BY TimeStamp DESC) CA  


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एकल कॉलम मानों को एकाधिक कॉलम मानों में कैसे विभाजित करें?

  2. SQL सर्वर संग्रहीत प्रक्रिया में सरणी पास करना

  3. एक सीमांकित कॉलम को एक अलग तालिका में विभाजित करने के लिए कुशल क्वेरी

  4. रिलेशनल डेटाबेस में कस्टम फ़ील्ड के लिए डिज़ाइन पैटर्न

  5. क्या मैं SQL सर्वर (C#) में एक पंक्ति को INSERT या अद्यतन करने के लिए स्ट्रीम का उपयोग कर सकता हूं?