mysql字段相同连接_mysql字符串连接,重复等字符串函数总结
mysql concat()函数
MySQL的concat函数可以连接一个或者多个字符串,如
selectconcat('10');
输出 10
selectconcat('11','22','33');
输出112233
而Oracle的concat函数只能连接两个字符串select concat('11','22') from dual;
需要注意MySQL的concat函数在连接字符串的时候,只要其中一个是NULL,那么将返回NULL
selectconcat('11','22',null);
输出NULL
而Oracle的concat函数连接的时候,只要有一个字符串不是NULL,就不会返回NULL
selectconcat('11',NULL)fromdual;
输出11
concat_ws()函数, 表示concat with separator,即有分隔符的字符串连接
如连接后以逗号分隔
selectconcat_ws(',','11','22','33');
输出11,22,33
和concat不同的是, concat_ws函数在执行的时候,不会因为NULL值而返回NULL
selectconcat_ws(',','11','22',NULL);
将输出11,22
group_concat()可用来行转列, Oracle没有这样的函数
完整的语法如下
group_concat([DISTINCT]要连接的字段[OrderBY ASC/DESC排序字段][Separator'分隔符'])
如下例子:
select*fromaa;
输出
+------+------+
| id | name |
+------+------+
| 1 | 10 |
| 1 | 20 |
| 1 | 20 |
| 2 | 20 |
| 3 | 200 |
| 3 | 500 |
+------+------+
6 rows in set (0.00 sec)
以id分组,把name字段的值打印在一行,逗号分隔(默认)
selectid,group_concat(name)fromaagroupbyid;
将输出:
+------+--------------------+
| id | group_concat(name) |
+------+--------------------+
| 1 | 10,20,20 |
| 2 | 20 |
| 3 | 200,500 |
+------+--------------------+
3 rows in set (0.00 sec)
以id分组,把name字段的值打印在一行,分号分隔
selectid,group_concat(name separator';')fromaagroupbyid;
输出:
+------+----------------------------------+
| id | group_concat(name separator ';') |
+------+----------------------------------+
| 1 | 10;20;20 |
| 2 | 20 |
| 3 | 200;500 |
+------+----------------------------------+
3 rows in set (0.00 sec)
以id分组,把去冗余的name字段的值打印在一行,逗号分隔
selectid,group_concat(distinct name)fromaagroupbyid;
输出
+------+-----------------------------+
| id | group_concat(distinct name) |
+------+-----------------------------+
| 1 | 10,20 |
| 2 | 20 |
| 3 | 200,500 |
+------+-----------------------------+
3 rows in set (0.00 sec)
以id分组,把name字段的值打印在一行,逗号分隔,以name排倒序
```sql
select id,group_concat(name order by name desc) from aa group by id;
输出:
+------+---------------------------------------+
| id | group_concat(name order by name desc) |
+------+---------------------------------------+
| 1 | 20,20,10 |
| 2 | 20 |
| 3 | 500,200 |
+------+---------------------------------------+
3 rows in set (0.00 sec)
repeat()函数,用来复制字符串,如下'ab'表示要复制的字符串,2表示复制的份数
selectrepeat('ab',2);
+----------------+
| repeat('ab',2) |
+----------------+
| abab |
+----------------+
1 row in set (0.00 sec)
SPACE(N) 函数。生成N个空格,如
selectspace(3);
输出:
+----------+
| space(3) |
+----------+
| |
+----------+
1 row in set (0.00 sec)
STRCMP(STR1,STR2) 字符串比较函数,该函数和字符集有关系,默认区分大小写
若STR1和STR2相同, 则返回 0,
若STR1小于STR2, 则返回 -1,
若STR1大于STR2, 则返回 1
selectstrcmp('abc','abc');
输出0
selectstrcmp('a','ab');
输出-1
selectstrcmp('abc','ab');
输出1
mysql字段相同连接_mysql字符串连接,重复等字符串函数总结相关推荐
- mysql 字段加减_MySQL中你必须了解的函数
在学习MySQL的时候你会发现,它有非常多的函数,在学习的时候没有侧重.小编刚开始学习的时候也会有这个感觉.不过,经过一段时间的学习之后,小编发现尽管函数有很多,但是常用的却只有那几个.今天小编就把常 ...
- mysql 字段最右匹配_Mysql字符串处理函数详细介绍、总结 -电脑资料
一.简明总结 ASCII(char) 返回字符的ASCII码值 BIT_LENGTH(str) 返回字符串的比特长度 CONCAT(s1,s2-,sn) 将s1,s2-,sn连接成字符串 CONCAT ...
- mysql内外三种连接_mysql之内连接,外连接(左连接,右连接),union,union all的区别...
内连接,外连接,左连接,右连接,全连接 测试数据: CREATE TABLE `a_table` ( `a_id` int(11) DEFAULT NULL, `a_name` varchar(10) ...
- mysql 全连接_MySQL全连接(Full Join)实现,union和union all用法
MySQL本身不支持你所说的full join(全连接),但可以通过union来实现 , 下面是一个简单测试,可以看看: mysql> CREATE TABLE a(id int,name ch ...
- mysql 修复错误连接_mysql 无法连接问题的定位和修复过程分享
定位结果如下: 客户环境: windows server 2003 r2 standard edition sp2 mysql Ver 14.12 Distrib 5.0.18, for Win32 ...
- mysql 左连接_MySQL左连接与右连接
前几次面试的时候遇到左右连接的问题,这里进行回顾. 先通过下面两个表展示一下左连接和右连接的结果 左连接与右连接 员工表: mysql> select * from employ;+------ ...
- mysql字段简索引_Mysql索引优化攻略(全)
所谓索引就是为特定的mysql字段进行一些特定的算法排序,比如二叉树的算法和哈希算法,哈希算法是通过建立特征值,然后根据特征值来快速查找.而用的最多,并且是mysql默认的就是二叉树算法 BTREE, ...
- mysql 字段加减_Mysql常见问题及优化
一.库表设计 1.1 引擎选择 在 mysql 5.1 中,引入了新的插件式存储引擎体系结构,允许将存储引擎加载到正在运新的 mysql 服务器中.使用 mysql 插件式存储引擎体系结构,允许数据库 ...
- mysql 字段加减_MySQL数据库开发常见问题及优化(续)
在设计表或索引时,常出现以下几个问题: 1.少建索引或不建索引.这个问题最突出,建议建表时 DBA 可以一起协助把关. 2.索引滥用.滥用索引将导致写请求变慢,拖慢整体数据库的响应速度(5.5 以下的 ...
- mysql字段的长度_MySQL字段的长度
MySQL字段有多种的类型,不同的MySQL字段长度也各不一样,下面就为您介绍各种MySQL字段的长度,供您参考学习之用. 数值类型 列类型 需要的存储量 TINYINT 1 字节 SMALLINT ...
最新文章
- oracle mysql 适配器_Oracle协议适配器错误解决办法
- java导出excel_如何导出你和女票的微信聊天记录
- 浅谈数据中心集成的优势
- cdockpane限制调整大小_影视后期制作小伙伴必看:使用AU对声音质量进行调整的三大技巧...
- SVN中如何去除版本控制器
- Windows Mobile 7(Photon) 梦幻之旅系列-前言
- darknet框架_【通知】有三AI发布150页深度学习开源框架指导手册与GitHub项目,欢迎加入我们的开源团队...
- HDU1061 Rightmost Digit【快速模幂】
- unity 动画 音频播放
- 2021全国研究生数学建模竞赛A题思路
- 如何用谷歌地图下载器下载大字体谷歌地图打印喷绘
- 分布式定时任务的解决方案
- 你相信吗?这些照片其实并没有被PS_-Chaz-_新浪博客
- 数字电路28(设计步骤及十进制加计数器设计)
- 微信小程序2D canvas绘制分享海报
- 转区系统开放艾欧尼亚转入服务器,【英雄联盟】转区系统开放艾欧尼亚转入服务...
- Qt 绘制拖动刻度尺
- 假如银行利率如下所示,请分别计算存款10000元,活期1年、活期2年、定期1年、定期2年后的本息合计。(结果四舍五入,不保留小数位。使用Math.round(double d)实现
- Lambda相关图形
- 提高生产力和效率的小方法
热门文章
- kmeans和Dbscans将相邻的轮廓聚类
- 【Microsoft Azure 的1024种玩法】四十八.基于Azure Virtual Machines快速搭建SQL Server应用
- python+django固定资产管理系统项目源码
- java布尔类型的调用_java-使用布尔值进行同步
- songtaste音乐列表
- python取出字典中最大值_python 比较字典value的最大值的几种方法
- 读侯俊杰的《深入浅出MFC》小记
- python自动发表情包
- c#退出窗口跳转_编写Qt多窗口程序
- DA14580BLE接收流程分析