MySQL之——常用函数汇总
目录
1、MySQL字符串拼接函数
2、MySQL字符串截取函数
3、MySQL字符串长度函数char_length()、length()
4、MySQL大小写转换函数
5、MySQL之case when than else end 函数
6、MySQL之IF函数
7、MySQL排序函数RANK
8、MySQL聚合函数
1、MySQL字符串拼接函数
- CONCAT
语法
concat(str1,str2,...)
例子说明:
SELECT CONCAT('You ', 'are ', 'a ', 'good ', 'man') AS 'result' FROM DUAL;
- CONCAT_WS
语法
CONCAT_WS(separator,str1,str2,...)
语法说明
CONCAT_WS(分隔符,字符1,字符2,...)
例子说明
SELECT CONCAT_WS(' ','but','we',"haven't",'fate') AS 'result' FROM DUAL;
- GROUP_CONCAT
说明
对分组后的数据,指定某个字段进行拼接,并且可以指定拼接的分隔符和拼接的顺序
语法
GROUP_CONCAT([DISTINCT] expr [,expr ...] [ORDER BY {unsigned_integer | col_name | expr} [ASC | DESC] [,col_name ...]] [SEPARATOR str_val])
语法说明:
GROUP_CONCAT([DISTINCT] 字符1,字符2... [ORDER BY 需要排序的字段 [ASC | DESC] ] [SEPARATOR 分隔符])
例子说明:
咱们以 力扣 的一题来做例子 1484题
题目要求按日期分组销售产品,将活动表中的产品列product 最后在新查出来的结果集中按字典序排序,并用逗号 ',' 分隔显示到新列products中
输入: Activities
表: +------------+-------------+ | sell_date | product | +------------+-------------+ | 2020-05-30 | Headphone | | 2020-06-01 | Pencil | | 2020-06-02 | Mask | | 2020-05-30 | Basketball | | 2020-06-01 | Bible | | 2020-06-02 | Mask | | 2020-05-30 | T-Shirt | +------------+-------------+ 输出: +------------+----------+------------------------------+ | sell_date | num_sold | products | +------------+----------+------------------------------+ | 2020-05-30 | 3 | Basketball,Headphone,T-shirt | | 2020-06-01 | 2 | Bible,Pencil | | 2020-06-02 | 1 | Mask | +------------+----------+------------------------------+
select sell_date, count(distinct product) num_sold, GROUP_CONCAT(distinct product ORDER BY product SEPARATOR ',') products from Activities group by sell_date;
# 解析:
# 本题需要对日期进行分组,而分组之后恰好需要group_concat函数来进行字符串的拼接
# 中间的 ORDER BY product 是按要求对产品进行字典序排序
2、MySQL字符串截取函数
left()、right()、substring()、substring_index()、mid()、substr() 等价于 substring() 函数;其中substring() 的功能非常强大和灵活。
1、left(str, length):从字符串的左边取 length 长度的字符串
2、right(str, length):从字符串的右边取 length 长度的字符串
select left('mp.csdn.net', 3);
# 从左边开始截取三个字符,结果:mp.
select right('mp.csdn.net', 3);
# 从左边开始截取三个字符,结果:net
3、substring(str, pos)、substring(str, pos, len)
select substring('mp.csdn.net', 4);
# 从索引4开始一直截取到最后,结果:csdn.netselect substring('mp.csdn.net', 4, 4);
# 从索引4开始,截取4个字符,结果:csdnselect substring('mp.csdn.net', -4);
# 从索引-4(从右向左计算)开始一直截取到最后,结果:.netselect substring('mp.csdn.net', -3, 4);
# 从索引-3开始一直截取到最后,结果:net
#可以看到我写的是4,最后是net,因为整个长度只有3个字符了
3、MySQL字符串长度函数char_length()、length()
# char_length 和 length 都是一个样子的
select char_length('奥黛丽赫本');
select length('奥黛丽赫本');
4、MySQL大小写转换函数
大写函数UPPER(s)、UCASE(s)
select upper('Peter');
select ucase('George');
小写函数LOWER(s)和LCASE(s)
select lower('CSDN');
select lcase('BAIDU.COM');
5、MySQL之case when than else end 函数
Case具有两种格式。简单Case函数和Case搜索函数。
# 简单Case函数,枚举清晰
CASE sex
WHEN '1' THEN '男'
WHEN '2' THEN '女'
ELSE '保密' END
# Case搜索函数;判别式条件,有点类似Java的if....else....的感觉
CASE WHEN sex = '1' THEN '男'
WHEN sex = '2' THEN '女'
ELSE '保密' END#case 后跟一个字段,when当某某条件时...than执行某某...else否则就怎样,一定不能少了结束条件end
6、MySQL之IF函数
IF函数根据判别式是否成立进行选择执行,成立执行前面的语句,不成立执行后面的语句;
IF(conditional, value_if_true, value_if_false);
7、MySQL排序函数RANK
窗口函数用法:
<窗口函数> OVER ( [PARTITION BY <列清单> ] ORDER BY <排序用列清单> )
在计算排序时,若存在相同位次,会跳过之后的位次。
例如,有3条排在第2位时,排序为:1,2,2,2,4······
2、DENSE_RANK()
这就是题目中所用到的函数,在计算排序时,若存在相同位次,不会跳过之后的位次。
例如,有3条排在第1位时,排序为:1,1,1,2······
3、ROW_NUMBER()
这个函数赋予唯一的连续位次。
例如,有3条排在第1位时,排序为:1,2,3,4······
相信自己
MySQL之——常用函数汇总相关推荐
- MySQL Functions 常用函数汇总
Aggregate Functions (聚合函数) numeric functions round(5.73,1) -- 保留一位小数,做四舍五入结果5.7 truncate(5.6789,2) - ...
- mysql中常用函数与存储过程的创建
mysql中常用函数与存储过程的创建 常用函数汇总 数学函数 字符串函数 日期和时间函数 条件判断函数 系统函数 加密函数 其他函数 自定义函数 自定义变量的声明和赋值 基本语法 实例 存储过程 事务 ...
- PHP访问mysql的常用函数,PHP操作MySQL数据库常用函数
PHP操作MySQL数据库常用函数 php操作mysql数据库,俗称天龙八步: 第一步:连接数据库 第二步:判断连接错误 第三步:选择数据库 第四步:设置字符集 第五步:准备SQL语句 第六步:执行并 ...
- matlab常用函数汇总
matlab常用函数汇总 1.特殊变量与常数 ans 计算结果的变量名 computer 确定运行的计算机 eps 浮点相对精度 Inf 无穷大 I 虚数单位 inputname 输入参数名 NaN ...
- mysql部分常用函数DATE_FORMAT(a.Created_time,'%Y-%m-%d%H
mysql部分常用函数 DATE_FORMAT(a.Created_time,'%Y-%m-%d %H:%i:%S') as c_time 有人告诉说1代表的是索引字段,和数组一样,1的话就是第二个字 ...
- Oracle常用函数汇总记录
Oracle常用函数汇总记录 一.SUBSTR 截取函数 用法:substr(字符串,截取开始位置,截取长度) //返回截取的字, 字符串的起始位置为1,截取时包含起始位置字符 1.SUBSTR( & ...
- C语言操作mysql数据 常用函数
C语言操作mysql数据 常用函数 所需头文件: #include <mysql/mysql.h> 功能: 获得或初始化一个MYSQL结构 函数原型: MYSQL *mysql_ini ...
- 八、MySQL 常用函数汇总(1)
文章目录 一.函数 1.1 函数简介 1.2 不同DBMS函数的差异 二.数学函数 2.1 绝对值函数ABS(x)和返回圆周率的函数PI() 2.2 平方根函数SQRT(x)和求余函数MOD(x,y) ...
- 【转载】mysql常用函数汇总
转载地址:http://www.jb51.net/article/40179.htm 一.数学函数ABS(x) 返回x的绝对值 BIN(x) 返回x的二进制(OCT返回八进制,HEX返回十六进 ...
最新文章
- 反应器(Reactor)模式-golang探索
- 中国涂料树脂行业投资盈利预测及发展规模展望报告2021-2027年版
- 深度学习工作开展_深入开展深度工作:新经济中的两项核心能力
- MySql 创建utf-8格式的数据库
- Qt文档阅读笔记-QLatin1String解析及文本段跨行赋值
- win7远程连接开启方法
- linux git编译安装目录,Linux(centos) 环境下如何源码编译安装git
- renpy 如何执行2个action_可执行的网络推广方案如何策划 8个维度 学会了策划方案不求人...
- python 英语分词_python 英文分词
- 国企“造船”转行测试,成功拿下11K,如今谁又甘心平庸呢?
- matlab偏导数方程,利用Matlab求解不同类型的偏微分方程
- linux4 系统下载,syslinux下载|
- 智能名片如何在会场营销落地
- 74HC595工作原理及FPGA实现数码管驱动方法
- 木子-后端-Spring配置时间触发器的方法
- 路由器可以当交换机用吗
- 家用小型UPS不间断电源—供电系统的保险
- 是用来将汉字输入到计算机中的一组,计算机应用基础(windows7+office2010)教学课件作者张巍4.ppt...
- 【Java练习题】Java 程序的输出 | 第十三套(集合)
- 魅蓝note2android8,魅蓝Note2支持扩展储存卡吗?支持多大的储存卡?
热门文章
- 自动特征构建工具——featuretools
- linux脚本程序是什么意思,Linux中$?是什么意思?
- 【网络安全】LDAP协议
- 珈和卫星遥感助力2021年小麦“两病一虫”防控
- 为了搞明白统计套利,从两组序列之间的关系说起
- 香港城大计算机学院xutaowei,2018年3月20日学术报告(徐宏,香港城市大学)
- 决策过程并举例_体外诊断产品立项与研发的过程管理之二:产品的设计开发(二)...
- TCP/IP三次握手 四次挥手
- android art 远程控制,IT之家学院:认识Android中的Dalvik与ART虚拟机
- 测试人生 | 低学历无未来?从小公司到拿下年薪45W+ ,这个90后小哥哥好励志~