सारांश :इस ट्यूटोरियल में, आप सीखेंगे कि 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 क्लॉज का उपयोग कैसे करें, जॉइन में शामिल कई टेबलों का कार्टेशियन उत्पाद तैयार करें।