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

यह कह रहा है कि मेरे पास कोई पंक्ति नहीं चुनी गई है?

ऐसा करने के कुछ तरीके हैं:

आप एंटी-जॉइन का उपयोग कर सकते हैं, जैसे:

SELECT m.MEMBERID,
       m.LASTNAME,
       m.FIRSTNAME
  FROM MEMBERS m
  WHERE m.MEMBERID NOT IN (SELECT DISTINCT MEMBERID
                             FROM CURRENTLOAN
                           UNION ALL
                           SELECT DISTINCT MEMBERID
                             FROM HISTORY);

आप जो चाहते हैं उसे करने का दूसरा तरीका (और मेरी पसंदीदा विधि) है:

SELECT DISTINCT m.MEMBERID,
                m.LASTNAME,
                m.FIRSTNAME
  FROM MEMBERS m
  LEFT OUTER JOIN (SELECT DISTINCT MEMBERID
                     FROM (SELECT MEMBERID
                             FROM CURRENTLOAN
                           UNION ALL
                           SELECT MEMBERID
                             FROM HISTORY)) u
    ON u.MEMBERID = m.MEMBERID
  WHERE u.MEMBERID IS NULL;

हालांकि, आपके द्वारा इस क्वेरी को दिखाए गए डेटा के साथ-साथ आपकी मूल क्वेरी को शून्य पंक्तियों को वापस करना चाहिए। SQLFiddle यहां

ध्यान दें कि यदि आप सदस्य 004 को वर्तमान ऋण पर टिप्पणी करते हैं, तो "जो ब्राउन" वापस आ जाता है SQLFiddle यहाँ

शुभकामनाएँ।




  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-12557 TNS:प्रोटोकॉल एडेप्टर लोड करने योग्य नहीं है

  2. Oracle DBMS_LOB.INSTR और CONTAINS प्रदर्शन

  3. संरचना का उपयोग कैसे करें और कॉलम सूची, refcursor के डेटाटाइप कैसे प्राप्त करें?

  4. Oracle शीर्ष 1 के साथ स्थिति में शामिल हों

  5. ORACLE RAW स्ट्रिंग प्रारूप में मानक GUID के लिए