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

सबक्वेरी में अंतर दृश्यता शामिल हों और कहाँ

में

FROM working_place wp 
JOIN working_place_worker wpw ON ... 
WHERE ...

ON खंड केवल को संदर्भित करता है शामिल होने में भाग लेने वाली दो तालिकाओं के लिए, अर्थात् wp और wpw . बाहरी क्वेरी के नाम इसे दिखाई नहीं दे रहे हैं।

WHERE खंड (और उसका चचेरा भाई HAVING वह माध्यम है जिसके द्वारा बाहरी क्वेरी को सबक्वेरी से सहसंबद्ध किया जाता है। बाहरी क्वेरी से नाम हैं इसके लिए दृश्यमान।

याद रखना आसान बनाने के लिए,

  • ON JOIN के बारे में है, कैसे दो टेबल एक पंक्ति (या पंक्तियाँ) बनाने के लिए संबंधित हैं
  • चयन मानदंड के बारे में कहां है, परीक्षण पंक्तियों को पास करना होगा

जबकि SQL पार्सर ON क्लॉज में अक्षर (जो कॉलम नाम नहीं हैं) को स्वीकार करेगा, यह जॉइन के बाहर कॉलम के संदर्भ में रेखा खींचता है। आप इसे एक ऐसा एहसान मान सकते हैं जो त्रुटियों से बचाता है।

आपके मामले में, wo तालिका JOIN का हिस्सा नहीं है , और खारिज कर दिया जाता है। यह है पूरी क्वेरी का हिस्सा है, और WHERE . द्वारा पहचाना जाता है .




  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. Oracle® SQL*Loader . के साथ SQL सर्वर डेटा सम्मिलित करना

  3. ओरेकल और प्रोग्रामिंग

  4. IN पैरामीटर के रूप में तालिका प्रकार के साथ संग्रहीत कार्यविधि का उपयोग करके Varchar2 डेटा सम्मिलित करने में असमर्थ

  5. Oracle SQL - स्ट्रिंग से आंशिक डुप्लिकेट हटाएं