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

MySQL में LEFT(), LOCATE(), REVERSE() का उपयोग करके अंतिम डिलीमीटर के आधार पर स्ट्रिंग का बायां भाग प्राप्त करना

अंतिम डिलीमीटर से पहले का सबस्ट्रिंग निकालना

स्ट्रिंग के अंतिम डिलीमीटर (जैसे '$') से पहले का भाग प्राप्त करने के लिए LEFT(), CHAR_LENGTH(), LOCATE(), और REVERSE() फंक्शन्स को मिलाएं।

आइए पहले एक टेबल बनाते हैं:

mysql> CREATE TABLE DemoTable (
    Title TEXT
);

रिकॉर्ड्स इन्सर्ट करें:

mysql> INSERT INTO DemoTable VALUES ('$/This$is[MySQL]$/MySQL[FirstClass]$MySQL[SecondClass]');
mysql> INSERT INTO DemoTable VALUES ('$/This$is[Java]$/Java[FirstClass]$Java[SecondClass]');

सभी रिकॉर्ड्स देखें:

mysql> SELECT * FROM DemoTable;

आउटपुट:

+--------------------------------------------------------+
| Title                                                  |
+--------------------------------------------------------+
| $/This$is[MySQL]$/MySQL[FirstClass]$MySQL[SecondClass] |
| $/This$is[Java]$/Java[FirstClass]$Java[SecondClass]    |
+--------------------------------------------------------+

अंतिम '$' से पहले का बायां भाग प्राप्त करने के लिए क्वेरी:

mysql> SELECT LEFT(Title, CHAR_LENGTH(Title) - LOCATE('$', REVERSE(Title))) AS result
    FROM DemoTable;

आउटपुट:

+-------------------------------------+
| result                              |
+-------------------------------------+
| $/This$is[MySQL]$/MySQL[FirstClass] |
| $/This$is[Java]$/Java[FirstClass]   |
+-------------------------------------+

चरण-दर-चरण व्याख्या:

  1. REVERSE(Title): स्ट्रिंग को उलट देता है (अंतिम '$' अब पहला '$' बन जाता है)
  2. LOCATE('$', REVERSE(Title)): उलटी स्ट्रिंग में पहले '$' की पोजीशन ढूंढता है (यानी मूल स्ट्रिंग में अंतिम '$' की पोजीशन)
  3. CHAR_LENGTH(Title) - LOCATE(...): मूल स्ट्रिंग की लंबाई घटाकर अंतिम '$' से पहले के वर्णों की संख्या प्राप्त करता है
  4. LEFT(Title, ...): उस लंबाई तक बायां भाग निकालता है

उदाहरण (पहली पंक्ति):

  • मूल: $/This$is[MySQL]$/MySQL[FirstClass]$MySQL[SecondClass]
  • उलटा: ssalC[dnoceS]LQSyM$ssalC[tsriF]LQSyM$/$si$hsiT/$
  • उलटे में पहला '$' पोजीशन 16 पर (1-आधारित)
  • मूल लंबाई: 58
  • बायां भाग लंबाई: 58 - 16 = 42
  • परिणाम: पहले 42 वर्ण = $/This$is[MySQL]$/MySQL[FirstClass]

MySQL 8.0+ में सरल: SUBSTRING_INDEX(Title, '$', -1) अंतिम '$' के बाद का भाग देता है, लेकिन बाएं भाग के लिए सबक्वेरी अभी भी चाहिए।

  1. Java के साथ MySQL डेटाबेस में टेबल से अंतिम रिकॉर्ड कैसे प्राप्त करें? Java के साथ MySQL डेटाबेस में टेबल से अंतिम रिकॉर्ड कैसे प्राप्त करें?

    MySQL डेटाबेस से डेटा प्राप्त करने के लिए, आपको Java से executeQuery() मेथड का उपयोग करना होगा। पहले MySQL डेटाबेस में एक टेबल बनाएं। यहां हम sample डेटाबेस में निम्नलिखित टेबल बनाएंगे: ); Query OK, 0 rows affected (0.80 sec) अब INSERT कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डाल सकते हैं। क्वेरी

  1. - MySQL में टेबल का पहला और अंतिम रिकॉर्ड कैसे प्राप्त करें?

    पहला और अंतिम रिकॉर्ड प्राप्त करने के लिए UNION का उपयोग करें। LIMIT का उपयोग वांछित रिकॉर्ड संख्या के लिए किया जाता है। उदाहरण टेबल बनाएं: mysql> create table DemoTable694 ( -> EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> EmployeeName varchar(100), -> EmployeeSala

  1. - MySQL SELECT स्टेटमेंट: स्ट्रिंग के बाएं से 5 वर्ण प्राप्त करें

    स्ट्रिंग के बाएं से वर्णों की संख्या प्राप्त करने के लिए MySQL में LEFT मेथड का उपयोग करें। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable ( Name varchar(100) ); Query OK, 0 rows affected (6.58 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> insert into