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

MySQL में LIMIT के साथ एकाधिक WHERE क्लॉज़ का उपयोग कैसे करें?

MySQL में एक ही क्वेरी में अलग-अलग शर्तों के साथ LIMIT लागू करने के लिए UNION ALL ऑपरेटर का उपयोग किया जाता है। यह तरीका तब उपयोगी होता है जब आपको अलग-अलग श्रेणियों के लिए अलग-अलग सीमाएँ (limits) सेट करनी हों।

उदाहरण के लिए टेबल बनाना

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Subject VARCHAR(100)
);

डेटा डालना

mysql> INSERT INTO DemoTable(Subject) VALUES('MySQL');
mysql> INSERT INTO DemoTable(Subject) VALUES('MySQL');
mysql> INSERT INTO DemoTable(Subject) VALUES('MongoDB');
mysql> INSERT INTO DemoTable(Subject) VALUES('MongoDB');
mysql> INSERT INTO DemoTable(Subject) VALUES('MySQL');
mysql> INSERT INTO DemoTable(Subject) VALUES('Java');
mysql> INSERT INTO DemoTable(Subject) VALUES('MySQL');
mysql> INSERT INTO DemoTable(Subject) VALUES('MongoDB');

सभी रिकॉर्ड देखना

mysql> SELECT * FROM DemoTable;

आउटपुट

+----+---------+
| Id | Subject |
+----+---------+
| 1  | MySQL   |
| 2  | MySQL   |
| 3  | MongoDB |
| 4  | MongoDB |
| 5  | MySQL   |
| 6  | Java    |
| 7  | MySQL   |
| 8  | MongoDB |
+----+---------+

LIMIT के साथ एकाधिक WHERE क्वेरी

यहाँ हम MySQL के लिए 3 रिकॉर्ड और MongoDB के लिए 5 रिकॉर्ड ले रहे हैं:

mysql> (SELECT * FROM DemoTable WHERE Subject='MySQL' LIMIT 3)
    -> UNION ALL
    -> (SELECT * FROM DemoTable WHERE Subject='MongoDB' LIMIT 5);

आउटपुट

+----+---------+
| Id | Subject |
+----+---------+
| 1  | MySQL   |
| 2  | MySQL   |
| 5  | MySQL   |
| 3  | MongoDB |
| 4  | MongoDB |
| 8  | MongoDB |
+----+---------+

नोट: UNION ALL डुप्लिकेट पंक्तियों को नहीं हटाता, इसलिए प्रदर्शन बेहतर रहता है। यदि आपको डुप्लिकेट हटाने हैं तो केवल UNION उपयोग करें।

  1. - MySQL स्टोर्ड प्रोसीजर में WHERE IN() क्लॉज का उपयोग कैसे करें?

    MySQL स्टोर्ड प्रोसीजर में डायनामिक WHERE IN() क्लॉज का उपयोग करने के लिए प्रिपेयर्ड स्टेटमेंट (Prepared Statements) का उपयोग करना पड़ता है, क्योंकि IN क्लॉज में सीधे पैरामीटर पास नहीं किया जा सकता। समस्या सीधे पैरामीटर उपयोग नहीं कर सकते: -- यह काम नहीं करेगा: SELECT * FROM table WHERE id IN (inpu

  1. - MySQL में WHERE क्लॉज में एकाधिक शर्तों के साथ UPDATE कैसे करें?

    MySQL में UPDATE स्टेटमेंट के WHERE क्लॉज में AND ऑपरेटर का उपयोग करके एकाधिक शर्तें निर्दिष्ट करके विशिष्ट पंक्तियों को अपडेट किया जा सकता है। सिंटैक्स UPDATE table_name SET column = value WHERE condition1 AND condition2 AND ...; उदाहरण तालिका बनाएं और डेटा डालें: mysql> CREATE TABLE DemoTable

  1. - MySQL में दशमलव बिंदु से दो स्थान पहले का अंक कैसे प्राप्त करें

    समाधान DIV ऑपरेटर का उपयोग करके पूर्णांक विभाजन करें। उदाहरण टेबल बनाएं: INSERT INTO demo1 VALUES (456.54), (50.64), (1000.78); क्वेरी SELECT value DIV 10 % 10 FROM demo1; परिणाम +-----------------+ | value DIV 10%10 | +-----------------+ | 5 | | 5 | | 0