sp; -> 4mysql> select OCTET_LENGTH('text'); -> 4注意,对于多字节字符,其CHAR_LENGTH()仅计算一次。 LOCATE(substr,str) POSITION(substr IN str)返回子串substr在字符串str第一个出现的位置,如果substr不是在str里面,返回0.mysql> select LOCATE('bar', 'foobarbar'); -> 4mysql> select LOCATE('xbar', 'foobar'); -> 0该函数是多字节可靠的。 LOCATE(substr,str,pos)返回子串substr在字符串str第一个出现的位置,从位置pos开始。如果substr不是在str里面,返回0。mysql> select LOCATE('bar', 'foobarbar',5); -> 7这函数是多字节可靠的。 INSTR(str,substr)返回子串substr在字符串str中的第一个出现的位置。这与有2个参数形式的LOCATE()相同,除了参数被颠倒。mysql> select INSTR('foobarbar', 'bar'); -> 4mysql> select INSTR('xbar', 'foobar'); -> 0这函数是多字节可靠的。 LPAD(str,len,padstr)返回字符串str,左面用字符串padstr填补直到str是len个字符长。mysql> select LPAD('hi',4,'??'); -> '??hi' RPAD(str,len,padstr)返回字符串str,右面用字符串padstr填补直到str是len个字符长。 mysql> select RPAD('hi',5,'?'); -> 'hi???'LEFT(str,len)返回字符串str的最左面len个字符。mysql> select LEFT('foobarbar', 5); -> 'fooba'该函数是多字节可靠的。 RIGHT(str,len)返回字符串str的最右面len个字符。mysql> select RIGHT('foobarbar', 4); -> 'rbar'该函数是多字节可靠的。 SUBSTRING(str,pos,len) SUBSTRING(str FROM pos FOR len) MID(str,pos,len)从字符串str返回一个len个字符的子串,从位置pos开始。使用FROM的变种形式是ANSI SQL92语法。mysql> select SUBSTRING('Quadratically',5,6); -> 'ratica'该函数是多字节可靠的。 SUBSTRING(str,pos) SUBSTRING(str FROM pos)从字符串str的起始位置pos返回一个子串。mysql> select SUBSTRING('Quadratically',5); -> 'ratically'mysql> select SUBSTRING('foobarbar' FROM 4); -> 'barbar'