- 1 1. Basics of String Manipulation in MySQL
- 2 2. Basic String Extraction in MySQL – The SUBSTRING Function
- 3 3. Extracting Strings with LEFT and RIGHT Functions
- 4 4. Splitting Strings with the SUBSTRING_INDEX Function
- 5 5. Practical Applications: String Extraction in Database Operations
- 6 6. Performance Optimization Tips
- 7 7. Conclusion
1. Basics of String Manipulation in MySQL
In database management, string manipulation is an essential skill for processing data and optimizing query results. MySQL provides convenient functions for extracting and manipulating strings. In this article, we focus primarily on the important SUBSTRING function, introduce other string manipulation methods, and explain practical usage examples.
2. Basic String Extraction in MySQL – The SUBSTRING Function
The SUBSTRING function in MySQL is one of the most commonly used functions for extracting a specified portion of a string.
Basic Syntax of the SUBSTRING Function
SUBSTRING(string, start_position, length)- string: The string to extract from.
- start_position: The starting position for extraction (the first character position is 1).
- length: The number of characters to extract (if omitted, extraction continues from the start position to the end of the string).
Example: Basic Usage
SELECT SUBSTRING('Hello World', 2, 5);In this query, five characters starting from the second character of the string “Hello World” are extracted, resulting in “ello “.
Using Negative Values with SUBSTRING
By specifying a negative value for the starting position, you can count from the end of the string and extract characters.
SELECT SUBSTRING('abcdefg', -3, 2);This query returns “ef”, which corresponds to the third and fourth characters counted from the end.
3. Extracting Strings with LEFT and RIGHT Functions
Instead of using the SUBSTRING function, you can also use the LEFT and RIGHT functions to retrieve a specified number of characters from the beginning or end of a string.
LEFT Function
The LEFT function extracts a specified number of characters from the left side of a string.
SELECT LEFT('abcdefg', 3);This query returns “abc”.
RIGHT Function
On the other hand, the RIGHT function retrieves a specified number of characters from the right side of a string.
SELECT RIGHT('abcdefg', 3);This query returns “efg”. These functions are especially useful when you need to extract a fixed number of characters from either the beginning or the end of a string.
4. Splitting Strings with the SUBSTRING_INDEX Function
The SUBSTRING_INDEX function is used to split a string based on a specified delimiter and retrieve a specific substring. This is particularly useful for CSV data or fields containing concatenated values.
Basic Syntax of the SUBSTRING_INDEX Function
SUBSTRING_INDEX(string, delimiter, N)- string: The target string to process.
- delimiter: The character used to split the string (for example, a comma).
- N: The number of delimiters to consider. A positive value counts from the beginning, and a negative value counts from the end.
Example: Usage
SELECT SUBSTRING_INDEX('apple,orange,banana', ',', 2);In this query, the string “apple,orange,banana” is split by commas, and the first two elements “apple,orange” are retrieved.

5. Practical Applications: String Extraction in Database Operations
String manipulation is extremely useful in real-world database management. Here are several practical examples.
Extracting Part of a Product Name
The following query searches for data where the product name ends with “Large”.
SELECT * FROM products WHERE SUBSTRING(name, -5, 5) = 'Large';In this way, you can specify the ending portion of the data and extract records that match specific conditions.
Extracting Numeric Data for Calculation
This example extracts part of a numeric field and uses it in a calculation.
SELECT name, price, SUBSTRING(price, -2, 2) * 5 AS total FROM products;In this query, the last two digits of the product price are extracted and multiplied by 5 to display the result as “total”.
6. Performance Optimization Tips
Although string manipulation is convenient, it can impact performance in large-scale databases. Below are several tips to improve performance.
Use Indexes Effectively
When searching for part of a string, properly configured indexes can significantly improve query speed. For example, when combining the LIKE clause with indexes, queries that search from the beginning of the pattern, such as LIKE 'abc%', are optimal. In contrast, patterns like LIKE '%abc' that perform suffix matching cannot use indexes effectively and may lead to performance degradation.
String Operations on Large Datasets
If you frequently perform string manipulation on large tables, consider processing string transformations at the application level. When database-side processing becomes heavy, distributing the workload to the application can help reduce system load.
7. Conclusion
String manipulation in MySQL is a powerful tool for data extraction and report generation. By effectively using functions such as SUBSTRING, LEFT, and RIGHT, you can easily retrieve the information you need. To optimize performance, it is important to configure appropriate indexes and carefully design your processing approach.
By mastering these techniques, you can further enhance your MySQL string manipulation skills. As a next step, we recommend learning about regular expressions and other advanced string processing techniques.


