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

MySQL में कॉलम वैल्यू से पहला शब्द कैसे हटाएं?

SUBSTRING और LOCATE से पहला शब्द हटाना

किसी टेक्स्ट कॉलम से पहला शब्द (पहले स्पेस तक) हटाकर बाकी टेक्स्ट प्राप्त करने के लिए SUBSTRING() और LOCATE() फंक्शन का उपयोग करें।

सिंटैक्स

SELECT SUBSTRING(yourColumnName, LOCATE(' ', yourColumnName) + 1) AS anyAliasName 
FROM yourTableName;

टेबल बनाना और डेटा इन्सर्ट करना

CREATE TABLE DemoTable (Title TEXT);

INSERT INTO DemoTable VALUES('Java in Depth');
INSERT INTO DemoTable VALUES('C++ is an object oriented programming language');
INSERT INTO DemoTable VALUES('MySQL is a relational database');
INSERT INTO DemoTable VALUES('Python with data structure');

मौजूदा डेटा

+------------------------------------------------+
| Title                                          |
+------------------------------------------------+
| Java in Depth                                  |
| C++ is an object oriented programming language |
| MySQL is a relational database                 |
| Python with data structure                     |
+------------------------------------------------+

क्वेरी: पहला शब्द हटाना

SELECT SUBSTRING(Title, LOCATE(' ', Title) + 1) AS RemoveFirstWord 
FROM DemoTable;

आउटपुट

+--------------------------------------------+
| RemoveFirstWord                            |
+--------------------------------------------+
| in Depth                                   |
| is an object oriented programming language |
| is a relational database                   |
| with data structure                        |
+--------------------------------------------+

कैसे काम करता है

  1. LOCATE(' ', Title) - पहला स्पेस की पोजीशन ढूंढता है
  2. + 1 - स्पेस के अगले कैरेक्टर से शुरू करें
  3. SUBSTRING(Title, position) - उस पोजीशन से अंत तक निकालता है

एज केस हैंडलिंग

अगर कोई स्पेस नहीं है (सिंगल वर्ड), तो LOCATE 0 लौटाता है और SUBSTRING पूरा स्ट्रिंग लौटा देता है। इसे रोकने के लिए:

SELECT CASE 
    WHEN LOCATE(' ', Title) > 0 THEN SUBSTRING(Title, LOCATE(' ', Title) + 1)
    ELSE ''
END AS RemoveFirstWord FROM DemoTable;

वैकल्पिक: SUBSTRING_INDEX (MySQL 8.0+)

SELECT SUBSTRING_INDEX(Title, ' ', -1) -- केवल आखिरी शब्द
-- या पहला शब्द हटाने के लिए जटिल लॉजिक की जरूरत

SUBSTRING_INDEX डिलीमीटर के आधार पर भाग निकालता है लेकिन पहला शब्द हटाने के लिए सीधा नहीं है।

  1. - MySQL में केवल NULL मानों को कैसे बदलें?

    MySQL में NULL मानों को विशिष्ट मान से बदलना MySQL में IS NULL ऑपरेटर का उपयोग करके NULL मानों की पहचान की जाती है, और IF() या COALESCE() फंक्शन का उपयोग करके उन्हें बदला जा सकता है। उदाहरण: NULL नाम को डिफॉल्ट टेक्स्ट से बदलें टेबल बनाएं और डेटा डालें: CREATE TABLE DemoTable ( Name VARCHAR(100

  1. - MySQL में कॉलम के केवल पहले तीन मानों का औसत कैसे निकालें

    MySQL में पहले तीन रिकॉर्ड्स का औसत निकालना इसके लिए आप सबक्वेरी का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाते हैं: mysql> CREATE TABLE DemoTable ( Score INT ); टेबल में कुछ रिकॉर्ड्स इन्सर्ट करें: mysql> INSERT INTO DemoTable VALUES (80); mysql> INSERT INTO DemoTable VALUES (45); mysql&

  1. - MySQL में ENUM कॉलम से केवल 'NO' मानों की गणना करें

    MySQL में ENUM कॉलम पर सशर्त गणना के लिए बूलियन अभिव्यक्ति का योग (SUM(condition)) उपयोग कर सकते हैं। MySQL में TRUE = 1 और FALSE = 0 होता है। टेबल बनाएं mysql> CREATE TABLE DemoTable1829 ( Name VARCHAR(20), isTopper ENUM(YES,NO) ); डेटा डालें mysql> INSERT INTO DemoTable1829 VALUES(