Mysql常用函数——字符串函数(上)

 

在python、C语言、java等编程语言里边我们常常能看到好多方便又好用的函数,好多刚学习SQL的小白用户不禁会问,SQL里边有没有函数呢,有哪些函数呢?答案是:有,有很多。  今天我们就一块来学习Mysql数据库中常见的一些函数(不同数据库其函数是有差别),首先我们先来学习常见的字符串函数。

 

CHAR_LENGTH(s):返回字符串s的字符数,同LENGTH(s)函数。  

实例:返回字符串RUNOOB的字符数  

SELECTCHAR_LENGTH("RUNOOB")ASLengthOfString;  

返回结果:6  

 

CONCAT(s1,s2...sn):字符串s1,s2等多个字符串合并为一个字符串  

实例:合并多个字符串  

SELECTCONCAT("SQL","Runoob","Gooogle","Facebook")ASConcatenatedString;  

返回结果:

SQLRunoobGooogleFacebook  

 

 

CONCAT_WS(x,s1,s2...sn):

同CONCAT(s1,s2,...)函数,但是每个字符串之间要加上x,x可以是分隔符  

 

实例:合并多个字符串,并添加分隔符-  

SELECTCONCAT_WS("-","SQL","Tutorial","is","fun!")ASConcatenatedString;  

返回结果:SQL-Tutorial-is-fun!  

LCASE(s):将字符串s转换为小写,同函数LOWER(s)  

实例:字符串RUNOOB转换为小写  

SELECTLCASE('RUNOOB');  

返回结果:runoob  

 

UPPER(s):将字符串转换为大写  

实例:将字符串runoob转换为大写  

SELECTUPPER("runoob");  

返回结果:RUNOOB  

 

LEFT(s,n):返回字符串s的前n个字符  

实例:返回字符串runoob中的前两个字符  

SELECTLEFT('runoob',2);  

返回结果:ru  

 

MID(s,n,len):从字符串s的n位置截取长度为

len的子字符串

同SUBSTRING(s,n,len)  

 

实例:从字符串RUNOOB中的第2个位置截取3个字符  

SELECTMID("RUNOOB",2,3);  

返回结果:UNO  

POSITION(s1INs):从字符串s中获取s1的开始位置  

实例:返回字符串abc中b的位置  

SELECTPOSITION('b'in'abc');  

返回结果:2  

 

RIGHT(s,n):返回字符串s的后n个字符  

实例:返回字符串runoob的后两个字符  

SELECTRIGHT('runoob',2);  

返回结果:ob  

 

STRCMP(s1,s2):比较字符串s1和s2,如果s1与s2相等返回0,如果s1>s2返回1,如果s1<s2返回-1,s1,s2也可是数值  

实例:比较字符串  

SELECTSTRCMP("runoob","runoob"),STRCMP(3,2),STRCMP(5,2);  

返回结果:0-11  

 

SUBSTR(s,start,length):从字符串s的start位置截取长度为length的子字符串  

实例:从字符串RUNOOB中的第2个位置截取3个字符  

SELECTSUBSTR("RUNOOB",2,3);  

返回结果:UNO  

IF(expr,v1,v2):如果表达式expr成立,则返回v1的值,否则返回v2的值  

实例:  

SELECTIF(3<5,‘正确’,‘错误’);  

返回结果:正确  

SELECTIF(3>5,‘正确’,‘错误’);  

返回结果:错误  

 

IFNULL(v1,v2):如果v1的值不为NULL,则返回v1的值,否则返回v2的值  

实例:  

SELECTIFNULL(NULL,1);  

返回结果:1  

SELECTIFNULL(0,1);  

返回结果:0  

 

ISNULL(ve):判断ve的值是否为空,为空返回1,不为空返回0  

实例:  

SELECTISNULL(NULL);  

返回结果:1  

SELECTISNULL(1);  

返回结果:0  

 

以上就是Mysql数据库中特别常见的字符串函数,学会了吗?希望它们能让你的工作事半功倍。下一期,我们讲重点介绍Mysql数据库中常见的数值函数,记得到时来捧场哦~

 

注:文章中图片来源于网络,如有侵权请联系删除!

PS:获取更多的资料,请私信我哦~

posted @ 2020-09-08 10:51  川石信息  阅读(246)  评论(0编辑  收藏  举报