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

MySQL में SUBSTRING_INDEX से हाइफ़न से पहले का टेक्स्ट प्राप्त करें

SUBSTRING_INDEX(str, delim, count) फ़ंक्शन स्ट्रिंग को डिलीमीटर से विभाजित करके निर्दिष्ट भाग लौटाता है। धनात्मक count बाएं से, ऋणात्मक दाएं से गिनता है।

टेबल बनाएं

mysql> CREATE TABLE DemoTable1857 (Name VARCHAR(50));

डेटा डालें

mysql> INSERT INTO DemoTable1857 VALUES('John-Smith');
mysql> INSERT INTO DemoTable1857 VALUES('Brown-Chris');
mysql> INSERT INTO DemoTable1857 VALUES('David-Carol-Miller');

पहला भाग प्राप्त करें (पहले हाइफ़न से पहले)

mysql> SELECT SUBSTRING_INDEX(Name, '-', 1) AS Name FROM DemoTable1857;

आउटपुट:

+-------+
| Name  |
+-------+
| John  |
| Brown |
| David |
+-------+

SUBSTRING_INDEX विविधताएं

क्वेरीपरिणामव्याख्या
SUBSTRING_INDEX(Name, '-', 1)Johnपहला भाग
SUBSTRING_INDEX(Name, '-', 2)John-Smithपहले 2 भाग
SUBSTRING_INDEX(Name, '-', -1)Smithअंतिम भाग
SUBSTRING_INDEX(Name, '-', -2)Chris-Smithअंतिम 2 भाग

अन्य उपयोगी फ़ंक्शन

  • SUBSTRING(str, pos, len) - स्थिति/लंबाई से निकालें
  • LOCATE(substr, str) - उपस्ट्रिंग की स्थिति खोजें
  • REPLACE(str, from, to) - प्रतिस्थापित करें

नोट

  • डिलीमीटर केस-सेंसिटिव है।
  • यदि डिलीमीटर नहीं मिलता, तो पूरी स्ट्रिंग लौटाई जाती है (count > 0 के लिए)।
  • NULL इनपुट पर NULL लौटाता है।
  1. - विशिष्ट कॉलम मानों के लिए एकल MySQL क्वेरी में एकाधिक काउंट प्राप्त करें

    इसके लिए, आप विशिष्ट कॉलम के लिए पैरामीटर मान के साथ एग्रीगेट फंक्शन SUM() का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable1790 ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(20), Score int ); Query OK, 0 rows affected (0.94 sec) इन्सर्ट कमा

  1. - MySQL में SELECT क्वेरी से विशिष्ट कॉलम रिकॉर्ड कैसे प्राप्त करें?

    MySQL में किसी टेबल से केवल विशिष्ट कॉलम के डेटा को प्राप्त करना बहुत आसान है। इसके लिए SELECT * के बजाय केवल उस कॉलम का नाम लिखें जिसे आप देखना चाहते हैं। उदाहरण के साथ समझें सबसे पहले एक डेमो टेबल बनाते हैं: mysql> CREATE TABLE DemoTable1837 ( StudentId INT NOT NULL AUTO_INCREMENT PRIMARY

  1. - MySQL में विशिष्ट पंक्ति प्राप्त करना

    WHERE, ORDER BY और LIMIT से विशिष्ट पंक्ति चुनें टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1972 ( Section char(1), StudentName varchar(20) ); Query OK, 0 rows affected (0.00 sec) mysql> insert into DemoTable1972 values(D,Chris); ... क्वेरी: C से बड़े सेक्शन को क्रमबद्ध करके पहले 2