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

निहित आंतरिक जुड़ता है - क्या वे बराबर हैं?

मैं इस सवाल का समाधान करने जा रहा हूं कि क्या वे असमानताएं हमेशा हैं सच। जवाब "नहीं" है, एसक्यूएल में नहीं। ज्यादातर परिस्थितियों में, वे समकक्ष हैं। समस्या अंतर्निहित प्रकार के रूपांतरण के साथ उत्पन्न होती है।

विशेष रूप से, यदि a.id एक संख्या है और अन्य स्तंभ तार हैं, तो आपके पास वह स्थिति है जहां:

1 = '1'        -- true
1 = '1.00'     -- true
'1' = '1.00'   -- false

आप यह देख सकते हैं इस db<>fiddle पर। JOIN . का उपयोग करके इसे सेट अप करना मामूली होगा s, लेकिन चूंकि मैं ऐसा कोड नहीं लिखने जा रहा हूँ जिसमें FROM . में अल्पविराम हों खंड, मैं वह अभ्यास आप पर छोड़ दूँगा।

व्यवहार में, जुड़ने के लिए उपयोग की जाने वाली आईडी एक ही प्रकार की होनी चाहिए। यदि वे नहीं हैं तो आप एक विदेशी कुंजी संबंध घोषित भी नहीं कर सकते हैं। यह सबसे अच्छा अभ्यास एक तरफ, दो प्रश्न स्वचालित रूप से समकक्ष नहीं हैं।

नोट:यह उतना ही सही होगा यदि आप उचित, स्पष्ट, मानक . का उपयोग करते हैं JOIN सिंटैक्स, जिसे मैं दृढ़ता से, आपको विशेष रूप से सीखने और उपयोग करने के लिए दृढ़ता से प्रोत्साहित करता हूं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. LENGTH () Oracle में फ़ंक्शन

  2. COSH() Oracle में फंक्शन

  3. मैं tnsname का उपयोग करके चींटी से Oracle डेटाबेस से कैसे जुड़ सकता हूँ?

  4. हाइबरनेट मैपिंग फ़ाइल में सीरियल करने योग्य ब्लॉब प्रकार को कैसे व्यक्त करें

  5. कैसे एक पैकेज oracle के अंदर सभी प्रक्रियाओं की सूची प्राप्त करने के लिए?