Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में UNION और ORDER BY क्लॉज का उपयोग कैसे करें

यूनियन MySQL में एक प्रकार का ऑपरेटर है। हम रिकॉर्ड्स को फ़िल्टर करने के लिए इसके साथ ORDER BY का उपयोग कर सकते हैं। यदि आप कई टेबल्स से या एक ही टेबल से पंक्तियों के कई सेट्स को एकल परिणाम सेट के रूप में एक के बाद एक चुनना चाहते हैं तो UNION का उपयोग करें।

आइए एक उदाहरण देखते हैं।

पहली टेबल बनाना

mysql> create table UnionDemo1 
-> ( 
-> id int 
-> ); 
Query OK, 0 rows affected (0.59 sec)

पहली टेबल में रिकॉर्ड्स डालना।

mysql> insert into UnionDemo1 values(1),(4),(10); 
Query OK, 3 rows affected (0.21 sec) 
Records: 3 Duplicates: 0 Warnings: 0

सभी रिकॉर्ड्स प्रदर्शित करने के लिए।

mysql> select *from UnionDemo1;

निम्नलिखित आउटपुट सभी रिकॉर्ड्स प्रदर्शित करता है।

+------+ 
| id | 
+------+ 
| 1 | 
| 4 | 
| 10 | 
+------+ 
3 rows in set (0.00 sec)

आइए दूसरी टेबल बनाते हैं।

mysql> create table UnionDemo2 
-> ( 
-> id int 
-> ); 
Query OK, 0 rows affected (0.54 sec)

दूसरी टेबल में रिकॉर्ड्स डालना।

mysql> insert into UnionDemo2 values(2),(3),(5),(6),(7),(8),(9); 
Query OK, 7 rows affected (0.21 sec) 
Records: 7 Duplicates: 0 Warnings: 0

सभी रिकॉर्ड्स प्रदर्शित करने के लिए।

mysql> select *from UnionDemo2;

यहां आउटपुट है।

+------+ 
| id | 
+------+ 
| 2 | 
| 3 | 
| 5 | 
| 6 | 
| 7 | 
| 8 | 
| 9 | 
+------+ 
7 rows in set (0.00 sec)

आइए अब ORDER BY के साथ UNION लागू करने की क्वेरी देखते हैं।

mysql> select id from UnionDemo1 
-> union 
-> select id from UnionDemo2 
-> order by id desc;

निम्नलिखित आउटपुट है।

+------+ 
| id | 
+------+ 
| 10 | 
| 9 | 
| 8 | 
| 7 | 
| 6 | 
| 5 | 
| 4 | 
| 3 | 
| 2 | 
| 1 | 
+------+ 
10 rows in set (0.05 sec)
महत्वपूर्ण: UNION डिफ़ॉल्ट रूप से डुप्लिकेट हटाता है (जैसे DISTINCT)। डुप्लिकेट रखने के लिए UNION ALL का उपयोग करें - यह तेज़ भी है। ORDER BY पूरे UNION परिणाम पर लागू होता है; व्यक्तिगत SELECT में ORDER BY लागू करने के लिए कोष्ठक का उपयोग करें: (SELECT ... ORDER BY ...) UNION (SELECT ... ORDER BY ...)।
  1. - MySQL में रिकॉर्ड्स को ऑर्डर करके N पंक्तियाँ हटाएं (ORDER BY ... LIMIT के साथ DELETE)

    MySQL में ORDER BY और LIMIT के साथ विशिष्ट पंक्तियाँ हटाना MySQL DELETE स्टेटमेंट में ORDER BY और LIMIT क्लॉज का समर्थन करता है, जिससे आप एक विशिष्ट क्रम में केवल पहली N पंक्तियों को हटा सकते हैं। यह पुराने रिकॉर्ड्स को संग्रहीत करने, डुप्लिकेट हटाने, या नमूना डेटा हटाने के लिए उपयोगी है। टेबल बनान

  1. - MySQL में ORDER BY FIELD और ID से कस्टम सॉर्ट और द्वितीयक सॉर्ट

    MySQL में ORDER BY FIELD() का उपयोग करके एक कॉलम को कस्टम क्रम में सॉर्ट करें, फिर दूसरे कॉलम से द्वितीयक सॉर्ट लागू करें। सिंटैक्स SELECT * FROM टेबल_नाम ORDER BY FIELD(कॉलम1, मान1, मान2, ...) DESC/ASC, कॉलम2 DESC/ASC; उदाहरण: Mike को पहले रखें, फिर ID अवरोही क्रम में 1. टेबल बनाएं );

  1. - MySQL में GROUP BY में MIN/MAX सबक्वेरी से समूह प्रतिनिधि पंक्ति चुनें

    MySQL में GROUP BY के साथ प्रत्येक समूह से एक विशिष्ट पंक्ति (जैसे न्यूनतम ID वाली) चुनने के लिए सबक्वेरी में MIN() या MAX() का उपयोग करें। उदाहरण: प्रत्येक अंक समूह से न्यूनतम StudentId वाली पंक्ति 1. टेबल बनाएं ); 2. डेटा डालें INSERT INTO DemoTable1572 VALUES(4, 79, Bob); -- समान अंक 79 3.