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

एसक्यूएल इन-क्लॉज को पास किया गया लापता डेटा खोजें

आप union . का उपयोग कर सकते हैं शहरों की तालिका बनाने के लिए और फिर minus ऑपरेटर।

select 'Dallas' as city from dual union all 
select 'Berlin' as city from dual union all 
select 'Cracow' as city from dual union all 
select 'Praha'  as city from dual  
minus
select city from address

संघ के बजाय आप पूर्वनिर्धारित प्रकार का उपयोग कर सकते हैं odcivarchar2list , जो वाक्य रचना को छोटा करता है:

select column_value as city 
  from table(sys.odcivarchar2list('Dallas', 'Berlin', 'Cracow', 'Praha'))
minus
select city from address

... और minus . के बजाय आप जॉइन का उपयोग कर सकते हैं या not in . का उपयोग कर सकते हैं या not exists

दोनों प्रश्नों के डेटा और आउटपुट का परीक्षण करें:

create table address (id number, city varchar2(10));
insert into address values (1, 'Rome');
insert into address values (2, 'Dallas');
insert into address values (3, 'Cracow');
insert into address values (4, 'Moscow');
insert into address values (5, 'Liverpool');
insert into address values (6, 'Cracow');
insert into address values (7, 'Seoul');

CITY
------------
Berlin
Praha


  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 SQL इन्सर्ट ट्रिगर टू हैश पासवर्ड काम नहीं कर रहा है (CHAR के साथ समस्या)

  2. शीर्षक के रूप में दिनांक के साथ जुड़े कॉलम दिवस के आधार पर

  3. हाल ही में निष्पादित SQL V$SQL में नहीं है

  4. ओआरए-00838

  5. regex_substr . में क्लॉज द्वारा कनेक्ट करें