mysql合并字符串的实现

 更新时间:2022年08月29日 09:30:08   作者:于先森啊  
这篇文章主要介绍了mysql合并字符串的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

mysql合并字符串

1.CONCAT(string1,string2,…)   

string1,string2代表字符串,concat函数在连接字符串的时候,只要其中一个是NULL,那么将返回NULL

SELECT CONCAT( '1', '01')

结果


SELECT CONCAT('1',NULL)

结果


 

2.CONCAT_WS(separator,str1,str2,...)

第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。

SELECT CONCAT_WS('-','1','2','3')

结果

SELECT CONCAT_WS('-','1','2',NULL)

结果

SELECT CONCAT_WS(NULL,'1','2','3')

结果




 

mysql字符串函数

字符串函数是MySQL中常用的函数。

字符串函数主要用于处理表中的字符串。

字符串函数包括求字符串长度、合并字符串、在字符串中插入子串和大小写字母之间的转换等函数。

mysql常用的字符串函数如下表所示

MySQL字符串函数
char_length(s)返回字符串s的字符数
length(s)返回字符串s的长度(一个中文字母长度为3)
concat(s1,s2,...)返回s1,s2..拼接之后的字符串
concat(x,s1,s2,...)返回以x为分隔符拼接之后的字符串
insert(s1,x,len,s2)返回将s2从s1第x个字符到x+len个替换之后的字符串
upper(s) ucase(s)将s字符串中的所有小写字母变成大写
lower(s) lcase(s)将s字符串中的所有大写字母变成小写
left(s,n)返回字符串s的前n个字符
rigth(s,n)返回字符串s的后n个字符
lpad(s1,len,s2)将字符串循环s2添加到s1的开始处,s1长度为len时停止
rpad(s1,len,s2)将字符串循环s2添加到s1的结尾处,s1长度为len时停止
trim(s)去除字符串s首尾两边的空格
ltrim(s)去除字符串s开始处的空格
rtrim(s)去除字符串s结尾处的空格
repeat(s,n)返回将字符串s重复n次后的字符串
space(n)返回n个空格
replace(s,s1,s2)将字符串s2替代字符串s中的子字符串s1
strcmp(s1,s2)s1<s2,返回-1;s1=s2,返回0;s1>s2,返回1;
substring(s,n,len)返回从字符串s的第n个字符开始长度为len的子字符串
mid(s,n,len)返回从字符串s的第n个字符开始长度为len的子字符串
locate(s1,s)返回s1在s中字符的第几个位置
position(s1 in s)返回s1在s中字符的第几个位置
instr(s,s1)返回s1在s中字符的第几个位置
reverse(s)返回字符串s的逆序字符串

elt(n,s1,s2,sn...)

返回第n个字符串 sn
field(s,s1,s2,sn...)返回字符串s在sn中匹配的位置 n
find_in_set(s1,s2)返回字符串s2在s1中匹配的位置,其中s2必须是以“ , ”分隔的字符串
make_set(x,s1,s2,sn...)按x的二进制数从sn中选取字符串

练习代码:

## 字符串函数
 
select char_length('admin,root'),length('admin,root'),char_length('流量明星'),length('流量明星');
 
select concat('a','b','c'),CONCAT_WS(',','a','b','c');
 
select insert('admin',2,3,'root');
 
select upper('adminROOTadmin,of;ajax'),ucase('adminROOTadmin');
 
select lower('adminROOTadmin,of;ajax'),lcase('adminROOTadmin');
 
select left('admin',3),right('admin',3);
 
select lpad('admin',12,'root'),rpad('admin',12,'root'),lpad('admin',6,'root'),rpad('admin',6,'root');
 
select trim(' ad min '),ltrim(' ad min '),rtrim(' ad min '),trim('ad' from 'admin admin admin ad');
 
select repeat('admin ',3),space(3),replace('admin','d','c');
 
select strcmp('admin','zdmin'),strcmp('admin','admin'),strcmp('zdmin','admin');
 
select substring('admin',1,3),mid('admin',1,3);
 
select locate('mi','admin'),position('mi' in 'admin'),instr('admin','min');
 
select reverse('admin'),elt(3,'admin','root','miss','running'),field('miss','admin','root','miss','running');
 
select find_in_set('miss','admin,root,miss,running')
 
select make_set(7,'a','d','m','i','n'),make_set(9,'a','d','m','i','n')

结果截图: 

 

 

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 详细解读MySQL的触发器trigger

    详细解读MySQL的触发器trigger

    触发器是由事件来触发某个操作,这些事件包括INSERT、UPDATE和DELETE语句。如果定义了触发程序,当数据库执行这些语句的时候就会激发触发器执行相应的操作,需要的朋友可以参考下
    2023-05-05
  • MySQL用命令行运行sql文件的详细图文教程

    MySQL用命令行运行sql文件的详细图文教程

    最近重新踩了一下mysql 这边的坑,记录一下自己忽略的地方,下面这篇文章主要给大家介绍了关于MySQL用命令行运行sql文件的详细图文教程,文中通过实例代码的非常详细,需要的朋友可以参考下
    2023-01-01
  • MySQL数据库高级查询和多表查询

    MySQL数据库高级查询和多表查询

    这篇文章主要介绍了MySQL数据库高级查询和多表查询,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • MySQL数据库表被锁、解锁以及删除事务详解

    MySQL数据库表被锁、解锁以及删除事务详解

    这篇文章主要给大家介绍了关于MySQL数据库表被锁、解锁以及删除事务的相关资料,需要的朋友可以参考下
    2022-05-05
  • MySQL中视图的使用及多表INNER JOIN的技巧分享

    MySQL中视图的使用及多表INNER JOIN的技巧分享

    做多表关联查询,如果表间关系非常清晰,结构简单,使用视图的方式比自己反复写复杂跨表SQL要容易的多
    2014-06-06
  • MySQL四种事务隔离级别详解

    MySQL四种事务隔离级别详解

    这篇文章主要为大家详细介绍了MySQL四种事务隔离级别的相关资料,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • 什么是分表和分区 MySql数据库分区和分表方法

    什么是分表和分区 MySql数据库分区和分表方法

    这篇文章主要为大家详细介绍了MySql数据库分区和分表方法,告诉大家什么是分表和分区,mysql分表和分区有什么联系,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • mysql的分区技术详细介绍

    mysql的分区技术详细介绍

    这篇文章主要介绍了mysql的分区技术详细介绍,本文讲解了分区技术概述、分区的类型及分区操作等内容,需要的朋友可以参考下
    2015-03-03
  • mysql 5.7.21 解压版安装配置方法图文教程

    mysql 5.7.21 解压版安装配置方法图文教程

    这篇文章主要为大家详细介绍了mysql 5.7.21 解压版安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • MySQL备份原理详解

    MySQL备份原理详解

    备份是数据安全的最后一道防线,对于任何数据丢失的场景,备份虽然不一定能恢复百分之百的数据(取决于备份周期),但至少能将损失降到最低
    2016-05-05

最新评论