玖叶教程网

前端编程开发入门

一文搞懂MySQL拼接字符串

本文主要介绍了MySQL中怎么连接字符串,+的用法,concat函数的用法,concat_ws函数的用法,感兴趣的小伙伴们可以参考一下。

MySQL中的"+"

在MySQL中可以使用加号“+”来连接两个字符串,“+”只适合整数相加,不适合字符串。

SELECT "11"+"12";



MySQL会尝试将加号两端的字段值尝试转换为数字类型,如果转换失败则认为字段值为0.

SELECT "aa"+"12";



MySQL中concat函数

在MySQL中进行字符串的拼接要使用CONCAT函数。CONCAT()函数用于将多个字符串连接成一个字符串,是最重要的MySQL函数之一。

CONCAT(str1,str2,…) 

返回结果为连接参数产生的字符串。

SELECT CONCAT("My", "S", "QL");



如有任何一个参数为NULL ,则返回值为 NULL。或许有一个或多个参数。

SELECT CONCAT("My", null, "QL");




一个数字参数被转化为与之相等的二进制字符串格式;

SELECT CONCAT(14.3);

若要避免这种情况,可使用显式类型 cast, 例如:

SELECT CONCAT(CAST(14.1 AS CHAR), 1)

注意:

如果所有参数均为非二进制字符串,则结果为非二进制字符串。

如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。

MySQL中concat_ws函数

MySQL中还提供了另外一个进行字符串拼接的函数CONCAT_WS,是CONCAT()的特殊形式。

CONCAT_WS(separator,str1,str2,…)

第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。

如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。

SELECT CONCAT_WS(",","第一","第二","第三");



如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。

SELECT CONCAT_WS(null,"第一","第二","第三");



CONCAT_WS()不会忽略任何空字符串。

SELECT CONCAT_WS(",","第一","","第二");



然而会忽略所有的 NULL。

SELECT CONCAT_WS(",","第一",null,"第二");


?

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言