MySQL常用函数系列之一:字符串函数(1)

来源:互联网 发布:js 多维数组 去重 编辑:程序博客网 时间:2024/05/01 05:47

MySQL常用函数系列之一:字符串函数(1)

本文将演示以下4个常用字符串函数:

CANCAT(S1,S2,…Sn)      

连接S1,S2,…Sn为一个字符串

INSERT(str,x,y,instr)      

将字符串str从第x位置开始,y个字符长的子串替换为字符串instr

LOWER(str)            

将字符串str中所有字符变为小写

UPPER(str)             

将字符串str中所有字符变为大写

 

 

CANCAT(S1,S2,…Sn)函数:把传入的参数连接成为一个字符串。下面的例子把“aaa”、“bbb”、“ccc”3个字符串连接成了一个字符串“aaabbbccc”。另外,任何字符串与NULL进行连接的结果都将是NULL。

示例1:

mysql> select concat('aaa','bbb','ccc') ,concat('aaa',null);

+---------------------------+--------------------+

| concat('aaa','bbb','ccc') | concat('aaa',null) |

+---------------------------+--------------------+

| aaabbbccc                 | NULL               |

+---------------------------+--------------------+

1 row in set (0.05 sec)

 

INSERT(str ,x,y,instr)函数:将字符串str从第x位置开始,y个字符长的子串替换为字符串instr。下面的例子把字符串“beijing2008you”中的从第12个字符开始以后的3个字符替换成“me”。

 

示例:

mysql> select INSERT('beijing2008you',12,3, 'me') ;

+-------------------------------------+

| INSERT('beijing2008you',12,3, 'me') |

+-------------------------------------+

| beijing2008me                       |

+-------------------------------------+

1 row in set (0.00 sec)

 

LOWER(str)和UPPER(str)函数:把字符串转换成小写或大写。在字符串比较中,通常要将比较的字符串全部转换为大写或者小写,如下例所示:

 

示例:

mysql>  select LOWER('BEIJING2008'), UPPER('beijing2008');

+----------------------+----------------------+

| LOWER('BEIJING2008') | UPPER('beijing2008') |

+----------------------+----------------------+

| beijing2008          | BEIJING2008          |

+----------------------+----------------------+

row in set (0.00 sec)

 

LEFT(str,x)和 RIGHT(str,x)函数:分别返回字符串最左边的x个字符和最右边的x个字符。如果第二个参数是NULL,那么将不返回任何字符串。下例中显示了对字符串“beijing2008”应用函数后的结果。

 

示例:

mysql> SELECT LEFT('beijing2008',7),LEFT('beijing',null),RIGHT('beijing2008',4);

+-----------------------+----------------------+------------------------+

| LEFT('beijing2008',7) | LEFT('beijing',null) | RIGHT('beijing2008',4) |

+-----------------------+----------------------+------------------------+

| beijing               |                      | 2008                   |

+-----------------------+----------------------+------------------------+

1 row in set (0.00 sec)


0 0