SQL学习(二):concat函数(连接字符串)

SQL学习(二):concat函数(连接字符串)concat函数(连接字符串):使用方法:CONCAT(str1,str2,…)返回结果为连接参数产生的字符串。如有任何一个参数为NULL,则返回值为NULL。注意:如果所有参数均为非二进制字符串,则结果为非二进制字符串。如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型cast,例如:SELECTCONCAT(CAST(int_colASCHAR),char_col)concat函数

大家好,又见面了,我是你们的朋友全栈君。

concat函数(连接字符串):

使用方法:
CONCAT(str1,str2,…)

返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。

注意:
如果所有参数均为非二进制字符串,则结果为非二进制字符串。
如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。
一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast, 例如:
SELECT CONCAT(CAST(int_col AS CHAR), char_col)

concat函数可以连接一个或者多个字符串,如
mysql> select concat(‘10’);
±————-+
| concat(‘10’) |
±————-+
| 10 |
±————-+
1 row in set (0.00 sec)

mysql> select concat(‘11’,‘22’,‘33’);
±———————–+
| concat(‘11’,‘22’,‘33’) |
±———————–+
| 112233 |
±———————–+
1 row in set (0.00 sec)

concat函数在连接字符串的时候,只要其中一个是NULL,那么将返回NULL
mysql> select concat(‘11’,‘22’,null);
±———————–+
| concat(‘11’,‘22’,null) |
±———————–+
| NULL |
±———————–+
1 row in set (0.00 sec)

concat_ws函数:

使用方法:
CONCAT_WS(separator,str1,str2,…)

CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式。第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。
注意:
如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。

如连接后以逗号分隔
mysql> select concat_ws(’,’,‘11’,‘22’,‘33’);

±——————————+
| concat_ws(’,’,‘11’,‘22’,‘33’) |
±——————————+
| 11,22,33 |
±——————————+
1 row in set (0.00 sec)

concat函数不同的是, concat_ws函数在执行的时候,不会因为NULL值而返回NULL

mysql> select concat_ws(’,’,‘11’,‘22’,NULL);
±——————————+
| concat_ws(’,’,‘11’,‘22’,NULL) |
±——————————+
| 11,22 |
±——————————+
1 row in set (0.00 sec)

repeat()函数

用来复制字符串,如下'ab'表示要复制的字符串,2表示复制的份数

mysql> select repeat('ab',2);

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

| repeat(‘ab’,2) |
±—————+
| abab |
±—————+

1 row in set (0.00 sec)

又如
mysql> select repeat(‘a’,2);

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

| repeat(‘a’,2) |
±————–+
| aa |
±————–+
1 row in set (0.00 sec)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135631.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号