常用字符串函数
字符串长度和位置
LENGTH(str): 返回字符串str的字符数。
CHAR_LENGTH(str): 返回字符串str的字符数,与LENGTH类似,但处理多字节字符时略有不同。
LOCATE(substr,str[,pos]): 返回子字符串substr在字符串str中第一次出现的位置,可选参数pos指定开始搜索的位置。
POSITION(substr IN str): 与LOCATE函数功能相同。
INSTR(str,substr[,pos]): 与LOCATE函数功能相同。
字符串截取和替换
SUBSTRING(str,pos,len): 从字符串str的第pos个字符开始提取长度为len的子字符串。
SUBSTRING_INDEX(str,delim,count): 返回从字符串str的第count个出现的分隔符delim之后的子字符串。
REPLACE(str,from_str,to_str): 将字符串str中所有的from_str替换为to_str。
INSERT(str,pos,len,newstr): 在字符串str的第pos个字符处插入长度为len的字符串newstr。
TRIM(str): 去除字符串str两端的空格。
LTRIM(str): 去除字符串str左端的空格。
RTRIM(str): 去除字符串str右端的空格。
字符串大小写转换
UPPER(str): 将字符串str中的所有字母转换为大写。
LOWER(str): 将字符串str中的所有字母转换为小写。
字符串连接和分割
CONCAT(str1,str2,...): 连接多个字符串。
CONCAT_WS(separator,str1,str2,...): 连接多个字符串,并在每个字符串之间插入指定的分隔符。
GROUP_CONCAT(str SEPARATOR 'separator'): 将组内多个值连接成一个字符串,并用指定的分隔符分隔。
其他常用函数
REVERSE(str): 反转字符串str。
LEFT(str,len): 返回字符串str最左边的len个字符。
RIGHT(str,len): 返回字符串str最右边的len个字符。
LPAD(str,len,pad): 用字符pad在字符串str的左边填充,直到字符串长度为len。
RPAD(str,len,pad): 用字符pad在字符串str的右边填充,直到字符串长度为len。
ASCII(str): 返回字符串str第一个字符的ASCII码值。
CHAR(N): 返回ASCII码值为N的字符。
示例
SQL
SELECT
UPPER(name),
SUBSTRING(email, LOCATE('@', email) + 1) AS domain,
CONCAT(first_name, ' ', last_name) AS full_name
FROM users;
常见使用场景
数据清洗: 去除多余空格、统一大小写、替换特殊字符等。
文本分析: 提取关键词、统计词频、进行情感分析等。
报表生成: 自定义列名、格式化输出等。
小结
MySQL字符串函数为我们提供了强大的文本处理能力,可以满足各种数据处理需求。在实际应用中,我们可以根据具体场景选择合适的函数进行组合,实现复杂的文本操作
本文暂时没有评论,来添加一个吧(●'◡'●)