目录
1.LEFT函数
2.MID函数
3.RIGHT函数
1.LEFT函数
(1)语法:left(text,len)即left(字符串文本,长度)
查询语句select [column(s),] left(text,len) [from table]
参数说明:
text:字符串,可直接引用字符串,也可为字段;
len:截取字符串的长度,为正整数,若为0或负数返回为空值。
说明:查询语句中用“[]”括起来的表示可选。若和其它字段一起查询时需要输入from语句指定目标表,若text为字段时也需要输入from语句指定目标表,若只是用left获取指定某字符串截取时可直接省略from语句,但是这种用法一般只是在调试而不常用于实际当中。
(2)用法:截取左边指定长度字符。
(3)实例
例1:从“hello world”截取“hello”。
select left('hello world',5)
现有一张学生表student,学号id,姓名name,性别sex,籍贯native_place,民族nation,出生日期born,年龄age。如下表所示。
ID | name | sex | native_place | nation | born | age |
1001 | 张三 | 男 | 广东省 | 汉 | 2000/3/16 | 22 |
1002 | 陈一 | 女 | 广东 | 壮 | 1998/3/15 | 24 |
1003 | 王五 | 男 | 西藏 | 藏 | 2002/1/6 | 20 |
1004 | 陈红 | 女 | 广东省 | 黎 | 2001/1/17 | 21 |
1005 | 李四 | 男 | 东北省 | 汉 | 1999/3/16 | 23 |
1006 | – | 女 | 广东省 | 黎 | 1998/5/6 | 24 |
1008 | 陈小小 | 女 | 广东 | 壮 | 1997/5/9 | 25 |
例2:将籍贯中省字去掉,截取前两个字。同时获取学生学号、姓名、性别和年龄。
select ID,name,sex,left(native_place,2),agefrom student
2.MID函数
(1)语法和用法:有两种形式
#①两个参数mid(text,start) #从指定字符串的某序数开始获取字符#②三个参数mid(text,start,len) #从指定字符串的某个位置开始获取指定长度的字符
参数说明:
text:字符串,可直接引用字符串,也可为字段;
start:开始截取的字符串位置,可为正负整数。
len:截取字符串的长度,为正整数,若为0或负数返回为空值。
说明:MID函数与SUBSTRING()是同义词,用法相同。
(2)实例
例:从“hello world”中截取“world”字符串。
当start为正数时,则开始字符“w”位置为7,注意的是“hello”和“world”之间的空字符是算一个字符。
#start为正数#两个两个参数select mid('hello world',7) 或select mid('hello world'from 7)#三个参数select mid('hello world',7,5)或select mid('hello world'from 7 for 5)
3.RIGHT函数
(1)语法:right(text,len)即right(字符串文本,长度)
查询语句select [column(s),] right(text,len) [from table]
参数说明:
text:字符串,可直接引用字符串,也可为字段;
len:截取字符串的长度,为正整数,若为0或负数返回为空值。
说明:查询语句中用“[]”括起来的表示可选。若和其它字段一起查询时需要输入from语句指定目标表,若text为字段时也需要输入from语句指定目标表,若只是用left获取指定某字符串截取时可直接省略from语句,但是这种用法一般只是在调试而不常用于实际当中。
(2)用法:截取右边指定长度字符。
(3)实例
例1:从“hello world”截取“world”。
select right('hello world',5)
SQL的LEFT、MID、RIGHT三大函数用法与EXCEL的LEFT、MID、RIGHT三大函数用法非常相似,可参考:excel如何从字符串中截取指定字符(LEFT、RIGHR、MID三大函数)_小白修炼晋级中的博客-CSDN博客_excel截取字符串中的一部分
SQL的substring函数可参考:SQL的substring函数及其用法实例——MYSQL另一种截取目标字符的函数_小白修炼晋级中的博客-CSDN博客