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

SQLite क्रॉस एक व्यावहारिक उदाहरण के साथ शामिल हों

सारांश :इस ट्यूटोरियल में, आप सीखेंगे कि SQLite CROSS JOIN का उपयोग कैसे करें एकाधिक तालिकाओं से दो या अधिक परिणाम सेट को संयोजित करने के लिए।

SQLite का परिचय CROSS JOIN खंड

यदि आप LEFT JOIN . का उपयोग करते हैं , INNER JOIN , या CROSS JOIN बिना ON या USING खंड, SQLite शामिल तालिकाओं के कार्टेशियन उत्पाद का उत्पादन करता है। कार्टेशियन उत्पाद में पंक्तियों की संख्या प्रत्येक शामिल तालिका में पंक्तियों की संख्या का गुणनफल है।

मान लीजिए, हमारे पास दो टेबल ए और बी हैं। निम्नलिखित कथन क्रॉस जॉइन करते हैं और ए और बी टेबल से पंक्तियों के कार्टेशियन उत्पाद का उत्पादन करते हैं।

SELECT *
FROM A JOIN B;Code language: SQL (Structured Query Language) (sql)
SELECT *
FROM A
INNER JOIN B;Code language: SQL (Structured Query Language) (sql)
SELECT *
FROM A
CROSS JOIN B;Code language: SQL (Structured Query Language) (sql)
SELECT * 
FROM A, B;Code language: SQL (Structured Query Language) (sql)

मान लीजिए, A तालिका में N पंक्तियाँ हैं और B तालिका में M पंक्तियाँ हैं, CROSS JOIN इन दो तालिकाओं में से एक परिणाम सेट तैयार करेगा जिसमें NxM . शामिल है पंक्तियाँ।

कल्पना कीजिए कि यदि आपके पास K . के साथ तीसरी तालिका C है पंक्तियाँ, CROSS JOIN . का परिणाम इन तीन तालिकाओं के खंड में NxMxK होगा पंक्तियाँ, जो बहुत बड़ी हो सकती हैं। इसलिए, CROSS JOIN . का उपयोग करते समय आपको बहुत सावधान रहना चाहिए खंड।

आप INNER JOIN . का उपयोग करते हैं और LEFT JOIN CROSS JOIN . से अधिक बार क्लॉज खंड। हालांकि, आपको CROSS JOIN मिलेगा कुछ मामलों में खंड बहुत उपयोगी है।

उदाहरण के लिए, जब आप एक मैट्रिक्स रखना चाहते हैं जिसमें डेटा से भरे दो आयाम हों जैसे कि सदस्य और सदस्यता डेटाबेस में दिनांक डेटा। आप सभी प्रासंगिक तिथियों के लिए सदस्यों के परिचारकों की जांच करना चाहते हैं। इस मामले में, आप CROSS JOIN का उपयोग कर सकते हैं निम्नलिखित कथन के रूप में खंड:

SELECT name,
       date 
FROM members
CROSS JOIN dates;Code language: SQL (Structured Query Language) (sql)

SQLite CROSS JOIN खंड उदाहरण

निम्नलिखित कथन ranks बनाते हैं और suits टेबल जो कार्ड के डेक के लिए रैंक और सूट को स्टोर करते हैं और इन दो तालिकाओं में पूरा डेटा डालते हैं।

CREATE TABLE ranks (
    rank TEXT NOT NULL
);

CREATE TABLE suits (
    suit TEXT NOT NULL
);

INSERT INTO ranks(rank) 
VALUES('2'),('3'),('4'),('5'),('6'),('7'),('8'),('9'),('10'),('J'),('Q'),('K'),('A');

INSERT INTO suits(suit) 
VALUES('Clubs'),('Diamonds'),('Hearts'),('Spades');Code language: SQL (Structured Query Language) (sql)

निम्नलिखित कथन CROSS JOIN का उपयोग करता है कार्ड डेटा का एक पूरा डेक वापस करने के लिए क्लॉज:

SELECT rank,
       suit
  FROM ranks
       CROSS JOIN
       suits
ORDER BY suit;Code language: SQL (Structured Query Language) (sql)
<थ>सूट
रैंक
2 क्लब
3 क्लब
4 क्लब
5 क्लब
6 क्लब
7 क्लब
8 क्लब
9 क्लब
10 क्लब
जम्मू क्लब
प्रश्न क्लब
कश्मीर क्लब
क्लब
2 हीरे
3 हीरे
4 हीरे
5 हीरे
6 हीरे
7 हीरे
8 हीरे
9 हीरे
10 हीरे
जम्मू हीरे
प्रश्न हीरे
कश्मीर हीरे
हीरे
2 दिल
3 दिल
4 दिल
5 दिल
6 दिल
7 दिल
8 दिल
9 दिल
10 दिल
जम्मू दिल
प्रश्न दिल
कश्मीर दिल
दिल
2 हुकुम
3 हुकुम
4 हुकुम
5 हुकुम
6 हुकुम
7 हुकुम
8 हुकुम
9 हुकुम
10 हुकुम
जम्मू हुकुम
प्रश्न हुकुम
कश्मीर हुकुम
हुकुम

इस ट्यूटोरियल में, आपने सीखा है कि SQLite CROSS 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. ActiveAndroid पूर्व स्कीमा माइग्रेशन का उपयोग करके तालिका को पॉप्युलेट करें

  2. SQLiteOpenHelper का उपयोग करते समय SQLCipher को कैसे कार्यान्वित करें

  3. SQLite के लिए 2 नमूना डेटाबेस

  4. SQLite में वर्तमान डॉट कमांड सेटिंग्स कैसे दिखाएं

  5. SQLiteOpenHelper onCreate () / onUpgrad () कब चलता है?