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

Oracle SQL क्लॉज मूल्यांकन आदेश

चयन सूची का हमेशा अंतिम मूल्यांकन नहीं किया जा सकता है क्योंकि ORDER BY उन उपनामों का उपयोग कर सकता है जिन्हें चयन सूची में परिभाषित किया गया है, इसलिए उन्हें बाद में निष्पादित किया जाना चाहिए। उदाहरण के लिए:

SELECT foo+bar foobar FROM table1 ORDER BY foobar

मैं कहूंगा कि सामान्य तौर पर निष्पादन का क्रम कुछ इस तरह हो सकता है:

  • से
  • कहां
  • ग्रुप बाय
  • चुनें
  • हो रहा है
  • आदेश दें

HAVING और ORDER BY परिणाम को बदले बिना GROUP BY और WHERE क्लॉज़ की अदला-बदली की जा सकती है।

वास्तव में चीजें अधिक जटिल हैं क्योंकि डेटाबेस विभिन्न निष्पादन योजनाओं के अनुसार निष्पादन को पुन:व्यवस्थित कर सकता है। जब तक परिणाम वही रहता है, इससे कोई फर्क नहीं पड़ता कि इसे किस क्रम में निष्पादित किया गया है।

यह भी ध्यान दें कि यदि ORDER BY क्लॉज के लिए एक इंडेक्स चुना जाता है तो डिस्क से पढ़े जाने पर पंक्तियाँ पहले से ही सही क्रम में हो सकती हैं। इस मामले में ORDER BY क्लॉज वास्तव में बिल्कुल भी निष्पादित नहीं होता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle में एक महीने में दिनों की संख्या प्राप्त करने के 2 तरीके

  2. Oracle पर संस्करण 4 (यादृच्छिक) UUID कैसे उत्पन्न करें?

  3. Oracle में KEEP के साथ और उसके बिना विभाजन

  4. Oracle ODP.net प्रबंधित बनाम अप्रबंधित ड्राइवर

  5. Oracle में सम्मिलित करना और उत्पन्न अनुक्रम ID को पुनः प्राप्त करना