表格 1 常用文本处理函数
函数 |
说明 |
示例 |
结果 |
Left(str,len) |
返回从左边开始的指定长度的字符 |
SELECT LEFT('foobarbar', 5); |
'fooba' |
Length(str) |
返回字符串长度 |
SELECT LENGTH('text'); |
4 |
Locate(substr,str,[pos]) |
找出子串位置(下标从1开始) |
SELECT LOCATE('bar', 'foobarbar'); SELECT LOCATE('xbar', 'foobar'); SELECT LOCATE('bar', 'foobarbar', 5); |
4 0 7 |
Lower(str) |
字符串小写 |
SELECT LOWER('QUADRATICALLY'); |
'quadratically' |
Ltrim(str) |
清空字符串左侧空格 |
SELECT LTRIM(' barbar'); |
'barbar' |
Right(str,len) |
返回从右边开始的指定长度的字符 |
SELECT RIGHT('foobarbar', 4); |
'rbar' |
Rtrim(str) |
清空字符串右侧空格 |
SELECT RTRIM('barbar '); |
'barbar' |
Soundex(str) |
SOUNDEX是一个将任何文本串转换为描述其语音表示的字母数字模式的算法。SOUNDEX考虑了类似的发音字符和音节,使得能对串进行发音比较而不是字母比较。注:1. 目前仅对English发音支持比较好;2. 对multibyte character sets结果不保证。 |
SELECT SOUNDEX('Hello'); SELECT SOUNDEX('Quadratically'); |
'H400' 'Q36324' |
SUBSTRING(str,pos) SUBSTRING(str FROM pos) SUBSTRING(str,pos,len) SUBSTRING(str FROMpos FOR len) |
返回子串,支持从右侧开始 |
SELECT SUBSTRING('Quadratically',5); SELECT SUBSTRING('foobarbar' FROM 4); SELECT SUBSTRING('Quadratically',5,6); SELECT SUBSTRING('Sakila', -3); SELECT SUBSTRING('Sakila', -5, 3); SELECT SUBSTRING('Sakila' FROM -4 FOR 2); |
'ratically' 'barbar' 'ratica' 'ila' 'aki' 'ki' |
Upper(str) |
字符串大写 |
SELECT UPPER('Hej'); |
'HEJ' |
Soundex example:
select cust_name, cust_contact
from customers
where cust_contact='Y. Lie';
Empty set (0.00 sec)
select cust_name, cust_contact
from customers
where soundex(cust_contact)=soundex('Y Lee');
+-------------+--------------+
| cust_name | cust_contact |
+-------------+--------------+
| Coyote Inc. | Y Lee |
+-------------+--------------+
1 row in set (0.00 sec)