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

MySQL में SUBSTRING_INDEX और CAST के साथ संख्या सेट के पहले नंबर द्वारा क्रमबद्ध करना

MySQL में SUBSTRING_INDEX() के साथ अल्पविराम से अलग संख्याओं के पहले नंबर द्वारा क्रमबद्ध करना

जब कॉलम में "245,654,76,89,98" जैसे अल्पविराम से अलग संख्याएं हों, तो SUBSTRING_INDEX() से पहला नंबर निकालकर संख्यात्मक क्रमबद्ध किया जा सकता है।

व्यावहारिक उदाहरण

तालिका बनाना

mysql> CREATE TABLE DemoTable (
    SetOfNumbers TEXT
);

संख्या सेट डालना

mysql> INSERT INTO DemoTable VALUES('245,654,76,89,98');
mysql> INSERT INTO DemoTable VALUES('2000,567,9090,6789');
mysql> INSERT INTO DemoTable VALUES('1001,90595,657,99');

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

mysql> SELECT * FROM DemoTable;

आउटपुट:

+--------------------+
| SetOfNumbers       |
+--------------------+
| 245,654,76,89,98   |
| 2000,567,9090,6789 |
| 1001,90595,657,99  |
+--------------------+

पहले नंबर के अनुसार क्रमबद्ध करने के लिए क्वेरी

mysql> SELECT * FROM DemoTable 
ORDER BY CAST(SUBSTRING_INDEX(SetOfNumbers, ',', 1) AS UNSIGNED);

आउटपुट:

+--------------------+
| SetOfNumbers       |
+--------------------+
| 245,654,76,89,98   |
| 1001,90595,657,99  |
| 2000,567,9090,6789 |
+--------------------+

चरण-दर-चरण

  1. SUBSTRING_INDEX(SetOfNumbers, ',', 1) - पहले अल्पविराम से पहले का भाग: '245', '2000', '1001'
  2. CAST(... AS UNSIGNED) - स्ट्रिंग को अनसाइन्ड इंटीजर में परिवर्तित
  3. ORDER BY - संख्यात्मक मान के अनुसार क्रमबद्ध

स्ट्रिंग क्रमबद्ध vs संख्यात्मक क्रमबद्ध


            
  1. - MySQL में अंतिम क्वेरी की पंक्तियों की संख्या कैसे खोजें

    SQL_CALC_FOUND_ROWS और FOUND_ROWS() के साथ कुल पंक्तियां गिनना जब आप LIMIT का उपयोग करते हैं लेकिन यह भी जानना चाहते हैं कि बिना LIMIT के कितनी पंक्तियां मिलतीं, तो SQL_CALC_FOUND_ROWS और FOUND_ROWS() का उपयोग करें। सिंटैक्स SELECT SQL_CALC_FOUND_ROWS TABLE_NAME FROM `information_schema`.tables W

  1. - MySQL में मॉड्यूलस परिणाम के आधार पर ORDER BY करें

    मॉड्यूलो ऑपरेटर के साथ कस्टम सॉर्टिंग संख्यात्मक कॉलम के मॉड्यूलस (शेष) परिणाम के आधार पर पंक्तियों को क्रमबद्ध करने के लिए ORDER BY column % divisor का उपयोग करें। टेबल और डेटा CREATE TABLE DemoTable ( StudentId INT, StudentName VARCHAR(100) ); Query OK, 0 rows affected (1.88 sec) INSER

  1. डेटाबेस में टेबलों की संख्या प्रदर्शित करने का MySQL क्वेरी क्या है? डेटाबेस में टेबलों की संख्या प्रदर्शित करने का MySQL क्वेरी क्या है?

    मान लीजिए, यहाँ मैं WEB डेटाबेस का उपयोग कर रहा हूँ। हमें डेटाबेस WEB में टेबलों की संख्या ज्ञात करनी है। इसके लिए MySQL में INFORMATION_SCHEMA.TABLES का उपयोग करें। टेबलों की संख्या प्रदर्शित करने का क्वेरी निम्न है: mysql> select count(table_name) as TotalNumberOfTablesInWebDatabase -> from