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

SQLite इंटरसेक्ट ऑपरेटर

SQLite में, INTERSECT ऑपरेटर का उपयोग एक कंपाउंड बनाने के लिए किया जाता है SELECT वह कथन जो बाएँ और दाएँ के परिणामों का प्रतिच्छेदन देता है SELECT बयान। दूसरे शब्दों में, यह दो प्रश्नों को जोड़ता है, लेकिन केवल उन पंक्तियों को लौटाता है जो दोनों प्रश्नों में वापस आती हैं।

उदाहरण

मान लीजिए कि हमारे पास निम्नलिखित टेबल हैं:

SELECT * FROM Employees;
SELECT * FROM Customers;

परिणाम:

EmployeeId  EmployeeName
----------  ------------
1           Bart        
2           Jan         
3           Ava         
4           Rohit       
5           Monish      
6           Monish      
7           Monish      

CustomerId  CustomerName
----------  ------------
1           Mia         
2           Rohit       
3           Peter       
4           Ava         
5           Monish      
6           Monish      

हम INTERSECT . का उपयोग कर सकते हैं ऑपरेटर उन कर्मचारियों को लौटाएगा जो ग्राहक भी हैं:

SELECT EmployeeName FROM Employees
INTERSECT
SELECT CustomerName FROM Customers;

परिणाम:

EmployeeName
------------
Ava         
Monish      
Rohit       

इसलिए हमें केवल वही मान मिलते हैं जो Employees . में दिखाई देते हैं तालिका जो Customers . में भी दिखाई देती है टेबल।

SQLite का INTERSECT . का कार्यान्वयन ऑपरेटर केवल अलग पंक्तियाँ देता है। तो उपरोक्त उदाहरण मोनिश के लिए केवल एक पंक्ति देता है, भले ही उस नाम के कई कर्मचारी और एकाधिक ग्राहक हों।

अन्य RDBMS हमें एक वैकल्पिक ALL . स्वीकार करके परिणाम में डुप्लीकेट शामिल करने की अनुमति देते हैं कीवर्ड उनके INTERSECT . के साथ ऑपरेटर, लेकिन SQLite नहीं करता है (कम से कम, लेखन के समय नहीं)। कुछ भी परिवर्तन होने पर SQLite के दस्तावेज़ों की जाँच करने के लिए स्वतंत्र महसूस करें।

एक वैकल्पिक क्वेरी

INTERSECT . का उपयोग किए बिना समान परिणाम प्राप्त करना संभव है ऑपरेटर। उदाहरण के लिए, हम इसके लिए अपना पहला उदाहरण फिर से लिख सकते हैं:

SELECT 
    DISTINCT EmployeeName
FROM Employees e
WHERE EXISTS (SELECT CustomerName FROM Customers c
WHERE e.EmployeeName = c.CustomerName);

परिणाम:

EmployeeName
------------
Ava         
Rohit       
Monish      

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLiteException ऐसी कोई तालिका नहीं:संकलन करते समय ItemTable:Select_id,... ItemTable से

  2. SQLite में समग्र कुंजी स्वत:उत्पन्न करें

  3. रिटर्निंग स्ट्रिंग ऐरे और AutoCompleteTextview पर इसका उपयोग करें

  4. SQLite तालिका बनाएँ

  5. SQLite मामला