UNION स्टेटमेंट का उपयोग दो SELECT क्वेरीज़ के परिणामों को डुप्लिकेट वैल्यूज़ को दोहराए बिना संयोजित करने के लिए किया जाता है। यदि दोनों SELECT क्वेरीज़ समान रो लौटाती हैं, तो इसे केवल एक बार सूचीबद्ध किया जाता है।
दो SELECT स्टेटमेंट्स पर UNION करने के लिए,
लौटाए गए कॉलम की संख्या समान होनी चाहिए
कॉलम के डेटा टाइप्स समान होने चाहिए
दोनों SELECT स्टेटमेंट्स द्वारा कॉलम्स को समान क्रम में लौटाया जाना चाहिए।
सिंटैक्स
SELECT column_name FROM table1 UNION SELECT column_name FROM table2
Python में MySQL का उपयोग करके दो SELECT क्वेरीज़ का UNION करने के चरण
MySQL कनेक्टर इम्पोर्ट करें
MySQL कनेक्टर इम्पोर्ट करें
connect() का उपयोग करके कनेक्टर के साथ कनेक्शन स्थापित करें
cursor() मेथड का उपयोग करके कर्सर ऑब्जेक्ट बनाएं
उपयुक्त MySQL स्टेटमेंट्स का उपयोग करके क्वेरी बनाएं
execute() मेथड का उपयोग करके SQL क्वेरी निष्पादित करें
कनेक्शन बंद करें
मान लीजिए दो टेबल्स हैं, "Students" और "Department" निम्नानुसार -
Students
+----------+--------------+-----------+ | id | Student_name | Dept_id | +----------+--------------+-----------+ | 1 | Rahul | 120 | | 2 | Rohit | 121 | | 3 | Kirat | 125 | | 4 | Inder | 123 | +----------+--------------+-----------+
Department
+----------+-----------------+ | Dept_id | Department_name | +----------+-----------------+ | 120 | CSE | | 121 | Mathematics | | 122 | Physics | +----------+-----------------+
हम दोनों टेबल्स से Dept_id सेलेक्ट करेंगे और परिणामों पर UNION करेंगे। यह हमें दोनों टेबल्स में मौजूद सभी विशिष्ट dept_ids लौटाएगा।
उदाहरण
import mysql.connector
db=mysql.connector.connect(host="your host", user="your username", password="your password",database="database_name")
cursor=db.cursor()
query="SELECT Dept_id FROM Students UNION SELECT Dept_id FROM Department"
cursor.execute(query)
rows=cursor.fetchall()
for row in rows:
print(row)
db.close()आउटपुट
120 121 125 123 122