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

MySQL में टेक्स्ट को एलिप्सिस (...) के साथ ट्रंकेट कैसे करें?


समाधान

आप LENGTH() फंक्शन के साथ CASE स्टेटमेंट का उपयोग करके टेक्स्ट को ट्रंकेट कर सकते हैं और एलिप्सिस (या कोई कस्टम टेक्स्ट) जोड़ सकते हैं।

टेबल बनाना और डेटा डालना

mysql> CREATE TABLE TruncateText (
    Id INT NOT NULL AUTO_INCREMENT,
    Number LONGTEXT,
    PRIMARY KEY(Id)
);
mysql> INSERT INTO TruncateText(Number) VALUES('64575868667687');
mysql> INSERT INTO TruncateText(Number) VALUES('7654332');
mysql> INSERT INTO TruncateText(Number) VALUES('25434656');
mysql> INSERT INTO TruncateText(Number) VALUES('6457586');
mysql> INSERT INTO TruncateText(Number) VALUES('958567686868675757574');
mysql> INSERT INTO TruncateText(Number) VALUES('374785868968787');
mysql> INSERT INTO TruncateText(Number) VALUES('58969678685858585858585858585');

क्वेरी: 7 अंकों से अधिक होने पर ट्रंकेट करें

mysql> SELECT *, 
    CASE 
        WHEN LENGTH(Number) > 7 
        THEN CONCAT(SUBSTRING(Number, 1, 7), '99999999') 
        ELSE Number 
    END AS AddNumber 
FROM TruncateText;

आउटपुट

+----+-------------------------------+-----------------+
| Id | Number                        | AddNumber       |
+----+-------------------------------+-----------------+
|  1 | 64575868667687                | 645758699999999 |
|  2 | 7654332                       | 7654332         |
|  3 | 25434656                      | 254346599999999 |
|  4 | 6457586                       | 6457586         |
|  5 | 958567686868675757574         | 958567699999999 |
|  6 | 374785868968787               | 374785899999999 |
|  7 | 58969678685858585858585858585 | 589696799999999 |
+----+-------------------------------+-----------------+

व्याख्या

  • यदि संख्या की लंबाई 7 से अधिक है, तो पहले 7 अंक रखें और 99999999 जोड़ दें।
  • यदि लंबाई 7 या उससे कम है, तो मूल मान अपरिवर्तित रहता है।
  • आप '99999999' की जगह '...' या कोई अन्य एलिप्सिस स्ट्रिंग उपयोग कर सकते हैं।
  1. Java का उपयोग करके MySQL टेबल में कॉलम की संख्या गिनना Java का उपयोग करके MySQL टेबल में कॉलम की संख्या गिनना

    ResultSetMetaData का उपयोग करके कॉलम मेटाडेटा प्राप्त करना इसके लिए ResultSetMetaData का उपयोग करें। पहले एक टेबल बनाते हैं: CREATE TABLE DemoTable ( StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentFirstName VARCHAR(20), StudentLastName VARCHAR(20) ); Query OK, 0 rows affect

  1. - MySQL में INET_ATON() से IP पते को मानव-पठनीय क्रम में सॉर्ट करें

    IP पते को स्ट्रिंग के रूप में सॉर्ट करने पर 192.168.1.100 192.168.1.2 से पहले आ जाता है। INET_ATON() IP पते को संख्या में बदलकर सही संख्यात्मक क्रम देता है। समस्या: स्ट्रिंग सॉर्ट ORDER BY IpAddress -- परिणाम: 192.168.1.100, 192.168.1.2, 192.168.1.20 (गलत) समाधान: INET_ATON() ORDER BY INET_ATON(Ip

  1. - MySQL में COUNT और GROUP BY से विशिष्ट पैटर्न के विशिष्ट आइटम गिनें

    किसी कॉलम में विशिष्ट पैटर्न (जैसे John-%) से शुरू होने वाले मानों की प्रति-मान गणना करने के लिए LIKE फ़िल्टर के साथ COUNT() और GROUP BY का उपयोग करें। टेबल बनाएं mysql> CREATE TABLE DemoTable1854 (Name VARCHAR(20)); डेटा डालें mysql> INSERT INTO DemoTable1854 VALUES(John-Smith); mysql> I