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

ओरेकल और लेफ्ट आउटर जॉइन

वे उपयोगकर्ता वापस आते हैं, लेकिन वे उन सभी स्तंभों के लिए शून्य के रूप में वापस आ जाते हैं, जो उन तालिकाओं में वापस आते हैं, जहां लेफ्ट जॉइन को उचित जॉइन नहीं मिला।

एएनएसआई नल कैसे काम करता हैb4_.ACTIVE=1 इन अभिलेखों के लिए अमान्य होगा क्योंकि शून्य <> 1

अपने जहां ब्लॉक को निम्नानुसार पुनर्गठित करने का प्रयास करें:

AND (b4_.ACTIVE=1 or b4_.ACTIVE is null) 
    AND (B4_.STATUS='A' or B4_.STATUS is null) 
    AND (UB2_.VISIBLE=1 or UB2_.VISIBLE is null)
    and (bl3_.ACTIVE=1 or bl3_.ACTIVE is null)

इससे निपटने का एक और तरीका है कि आप अपने बाएं जोड़ में पूर्वापेक्षाएँ जोड़ें। आप ऐसा कर सकते हैं जैसे मैंने नीचे किया था और यह उन बैज को बाहर कर देगा जहां सक्रिय <> 1 खराब बैज को छोड़कर और अभी भी सभी उपयोगकर्ताओं को वापस कर देगा।

 left outer join
        REWARD.BADGES b4_ 
            on bl3_.BADGEID=b4_.ID 
                AND b4_.ACTIVE=1



  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. ट्रिगर उत्परिवर्तित समस्या

  3. रेल का उपयोग करके ऑरैकल से कनेक्ट होने के बाद विशिष्ट स्क्रिप्ट कैसे चलाएं?

  4. क्या बाइंड वेरिएबल्स के साथ ग्रुप बाय का उपयोग करना संभव है?

  5. VARCHAR अधिकतम लंबाई 4000 है लेकिन केवल 2666 बाइट लंबा थाई पाठ संग्रहीत किया जा सकता है