Mysql 常用函数

本文深入解析SQL中常用的文本处理函数,包括左截取、长度、子串查找、大小写转换、空格去除、右截取、SOUNDEX算法等,并通过示例展示其用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

表格 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)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值