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

टी-एसक्यूएल सबक्वेरी मैक्स (दिनांक) और जुड़ता है

सबक्वायरीज़ के बिना इसे करने का एक और तरीका यहां दिया गया है। यह विधि अक्सर दूसरों से बेहतर प्रदर्शन करेगी, इसलिए यह देखने के लिए दोनों विधियों का परीक्षण करने लायक है कि कौन सा सर्वोत्तम प्रदर्शन देता है।

SELECT
     PRT.PartID,
     PRT.PartNumber,
     PRT.Description,
     PRC1.Price,
     PRC1.PriceDate
FROM
     MyParts PRT
LEFT OUTER JOIN MyPrices PRC1 ON
     PRC1.PartID = PRT.PartID
LEFT OUTER JOIN MyPrices PRC2 ON
     PRC2.PartID = PRC1.PartID AND
     PRC2.PriceDate > PRC1.PriceDate
WHERE
     PRC2.PartID IS NULL

यह कई परिणाम देगा यदि आपके पास एक ही सटीक PriceDate के साथ दो कीमतें हैं (अधिकांश अन्य समाधान वही करेंगे)। इसके अलावा, मेरे पास भविष्य में होने वाली अंतिम कीमत की तारीख के लिए कुछ भी नहीं है। आप इसके लिए एक चेक पर विचार करना चाह सकते हैं, भले ही आप किसी भी तरीके का उपयोग कर रहे हों।



  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. कौन से कॉलम आम तौर पर अच्छी अनुक्रमणिका बनाते हैं?

  3. सिस्टम टेबल मास्टर..spt_values ​​का उद्देश्य क्या है और इसके मूल्यों के अर्थ क्या हैं?

  4. इनर जॉइन के अलावा तीन टेबल जॉइन के साथ जुड़ते हैं

  5. HAS_DBACCESS () - पता लगाएं कि क्या कोई उपयोगकर्ता SQL सर्वर में किसी डेटाबेस तक पहुंच सकता है