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

Oracle:बॉटम-अप डिलीट

जैसा कि आप एल्गोरिथम में रुचि रखते हैं, आपका प्रश्न जो उबलता है वह IN . के बीच का अंतर है और EXISTS चूंकि आपके दो उदाहरण IN . के लिए समान बचत हैं एक EXISTS . में बदल रहा है CHILD . से हटाने में टेबल।

पिछले कुछ वर्षों में इस अंतर के बारे में काफी कुछ लिखा गया है लेकिन संक्षेप में IN आमतौर पर उपयोग किया जाता है जहां तुलनित्रों की संख्या कम होती है जबकि EXISTS बड़ी संख्या में तुलनित्र लौटाने वाली उपश्रेणियों के लिए अधिक कुशल है (विशेषकर यदि उन मानों में बड़ी संख्या में डुप्लिकेट हैं)।

IN EXISTS . के दौरान प्रत्येक लौटे हुए तुलनित्र का मूल्यांकन करना होता है पहले मैच का सामना करने पर संतुष्ट होता है।

इसके अपवाद हैं और यदि आप उनके लिए गूगल करते हैं तो आप उन्हें ढूंढ लेंगे लेकिन कुल मिलाकर यह सच प्रतीत होता है।

टॉम कायटे (ओरेकल वीपी) का यहां स्पष्टीकरण के साथ एक बहुत अच्छा जवाब है:http://asktom.oracle.com/pls/asktom/f?p=100:11:2148775836129778::::P11_QUESTION_ID:953229842074

TechRepublic की भी यहाँ अच्छी व्याख्या है:http://www.techrepublic.com/article/oracle-tip-understand-the-difference-between-in-and-exists-in-subqueries/5297080

आशा है कि यह मदद करेगा...




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-01036:C# के माध्यम से क्वेरी चलाते समय अवैध चर नाम/संख्या

  2. Oracle SQL को nth तत्व regexp मिल रहा है

  3. Oracle के साथ CLOB कॉलम पर GROUP BY का उपयोग कैसे करें?

  4. ओरेकल संग्रहीत प्रक्रिया को कैसे निष्पादित करें?

  5. तालिका पूर्ण स्कैन डेटा एक्सेस विधि के बिना Oracle क्वेरी परिणाम पृष्ठांकन: