SUBSTRING_INDEX(str, delim, count) एक स्ट्रिंग से डिलीमिटर की निर्दिष्ट घटना तक का उपस्ट्रिंग लौटाता है।
पैरामीटर्स
str— स्रोत स्ट्रिंगdelim— डिलीमिटर (खोजने वाला विभाजक)count— डिलीमिटर की घटनाओं की संख्या (धनात्मक या ऋणात्मक)
उदाहरण 1: धनात्मक count
mysql> SELECT SUBSTRING_INDEX('My Name is Ram', 'a', 2);
+-----------------------------------------+
| SUBSTRING_INDEX('My Name is Ram', 'a', 2) |
+-----------------------------------------+
| My Name is R |
+-----------------------------------------+
दूसरे 'a' से पहले का भाग: 'My Name is R'
mysql> SELECT SUBSTRING_INDEX('My Name is Ram', 'a', 1);
+-----------------------------------------+
| SUBSTRING_INDEX('My Name is Ram', 'a', 1) |
+-----------------------------------------+
| My N |
+-----------------------------------------+
पहले 'a' से पहले का भाग: 'My N'
उदाहरण 2: ऋणात्मक count (दाएं से)
mysql> SELECT SUBSTRING_INDEX('www.google.com', '.', -1);
+------------------------------------------+
| SUBSTRING_INDEX('www.google.com', '.', -1) |
+------------------------------------------+
| com |
+------------------------------------------+
mysql> SELECT SUBSTRING_INDEX('www.google.com', '.', -2);
+------------------------------------------+
| SUBSTRING_INDEX('www.google.com', '.', -2) |
+------------------------------------------+
| google.com |
+------------------------------------------+
उपयोग के मामले
- डोमेन नाम से TLD निकालना (
count = -1) - पथ से फाइल नाम प्राप्त करना
- CSV डेटा पार्स करना
- नेस्टेड उपयोग से दो डिलीमिटर्स के बीच का भाग निकालना