【MySQL 函数】:一文彻底搞懂 MySQL 函数(一)

news2024/11/23 15:40:20

前言

✨欢迎来到小K的MySQL专栏,本节将为大家带来MySQL字符串函数和数学函数的讲解

目录

      • 前言
      • 一、字符串函数
      • 二、数学函数
      • 三、总结

一、字符串函数

函数作用
UPPER(列|字符串)将字符串每个字符转为大写
LOWER(列|字符串)将字符串每个字符转为小写
CONCAT(str1,str2,…)将所有字符串连接成一个字符串
REPLACE(列|字符串,新字符串)使用新字符串替换旧字符串
LENGTH(列|字符串)求字符串长度
SUBSTR(列|字符串,开始点[,长度])字符串截取
LEFT(str,len)获取字符串左边len个字符组成的字符串
RIGHT(str,len)获取字符串右边len个字符组成的字符串
MID(str,pos,len)获取字符串中从pos(第几个)位置开始,长度为len的字符串
ASCII(字符)返回与指定字符对应的十进制整数
CHR(数字)返回与整数对应的字符
RPAD(列|字符串,长度,填充字符)
LPAD(列|字符串,长度,填充字符)
用指定的字符在字符串右或左填充
LTRIM(字符串)、RTRIM(字符串)去掉字符串左或右的空格
TRIM(列|字符串)去掉字符串左右空格
INSTR(列|字符串,要查找的字符串,开始位置,出现位置)查找一个子字符串是否在指定的位置上出现

字符串函数练习:

  • UPPER(列|字符串):将字符串每个字符转为大写LOWER(列\|字符串):将字符串每个字符转为小写,将员工姓名分别转为大写和小写

    SELECT UPPER(ename),LOWER(ename) FROM emp;
    
  • CONCAT(str1,str2,...):将所有字符串连接成一个字符串,将员工的姓名和该员工老板的编号连接在一起

    SELECT CONCAT(ename,mgr) FROM emp;
    
  • REPLACE:(列|字符串,新字符串) 使用新字符串替换旧字符串,将word替换为king

    SELECT REPLACE('hello word','word','king') "替换";
    
  • LENGTH(列|字符串):求字符串长度

    SELECT LENGTH(123466);
    
  • SUBSTR(列|字符串,开始点[,长度]): 字符串截取,截取ing

    SELECT SUBSTR('king word',2,3);
    
  • LEFT(str,len): 获取字符串左边len个字符组成的字符串,RIGHT(str,len):获取字符串右边len个字符组成的字符串,MID(str,pos,len) :获取字符串中从pos(第几个)位置开始.长度为len的字符串TRIM(列|字符串):去掉字符串左右空格

    SELECT LEFT('king',2),RIGHT('king',2),MID('king',2,3);
    
  • ASCII(字符) :返回与指定字符对应的十进制整数,CHR(数字) 返回与整数对应的字符

    SELECT ASCII('A'),CHAR(98);
    
  • RPAD:(列|字符串,长度,填充字符),LPAD:(列|字符串,长度,填充字符) 用指定的字符在字符串右或左填充拓展:两边填充

    SELECT RPAD('king',10,'*'),LPAD('king',10,'*');
    SELECT LPAD(RPAD('king',10,'*'),15,'*');
    
  • LTRIM(字符串)、RTRIM(字符串) :去掉字符串左或右的空格TRIM(列|字符串) 去掉字符串左右空格

    SELECT LTRIM('  king  '),RTRIM('  king  '),TRIM('  king  ');
    
  • INSTR:(列|字符串,要查找的字符串,开始位置,出现位置) 查找一个子字符串是否在指定的位置上出现

    SELECT INSTR("king",'ki');
    

字符串函数综合实践:

  1. 把员工姓名首字母大写
SELECT CONCAT(UPPER(LEFT(ename,1)),LOWER(SUBSTR(ename,2))) FROM emp;
  1. 查询出姓名长度是5的所有员工信息
SELECT *FROM emp WHERE LENGTH(ename)=5;
  1. 查询出员工姓名前三个字母是‘JAM’的员工
SELECT * FROM emp WHERE LEFT(ename,3)='JAM';
  1. 查询所有员工信息,但是不显示姓名的前三个字母
SELECT ename, SUBSTR(ename,4) FROM emp; 
# 只显示后三个字符
SELECT ename,SUBSTR(ename,-4) FROM emp;

效果展示:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、数学函数

函数作用
ROUND(数字[,保留位数])根据指定的保留位数对小数进行四舍五入,如果不指定保留位数,则小数点之后的数字全部进行全部四舍五入
TRUNCATE(数字[,截取位数])保留指定位数的小数,如果不指定,则表示不保留
CEIL(数字),CEILING(数字)对小数向上取整
FLOOR(数字)对小数向下取整
RAND([n])随机返回0到1.0之间的小数,如果指定n每次产生的就都是重复的

数学函数练习:

  • ROUND(数字[,保留位数]) : 根据指定的保留位数对小数进行四舍五入,如果不指定保留位数,则小数点之后的数字全部进行全部四舍五入

    SELECT ROUND(3.66);
    SELECT ROUND(3.66,1);
    
  • TRUNCATE(数字[,截取位数]) : 保留指定位数的小数,如果不指定,则表示不保留

    SELECT TRUNCATE(3.889,1); #截断
    
  • CEIL(数字),CEILING(数字):对小数向上取整,FLOOR(数字) 对小数向下取整

    SELECT CEIL(3.66),CEILING(3.99);
    SELECT FLOOR(3.89);
    
  • RAND([n]):随机返回0到1.0之间的小数,如果指定n每次产生的就都是重复的

    SELECT RAND();
    

效果如下:

在这里插入图片描述
在这里插入图片描述

数学函数综合练习:

通过数据库的函数,生成一个六位数字的随机验证码。思路:先生成一个0~1之间的小数,然后乘以100万,然后截断,又因为是生成的0-1之间的小数,所以可能是0.0…这种情况,所以我们最进行填充,保证有六位

SELECT LPAD(TRUNCATE(RAND()*1000000,0),6,'0');

三、总结

✨~MySQL 函数会对传递进来的参数进行处理,并返回一个处理结果,也就是返回一个值。MySQL 包含了大量并且丰富的函数,咱们讲解几十个常用的,剩下的比较罕见的函数我们可以到「✨MySQL 参考手册」查询。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/644903.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

阿里云企业邮箱购买流程

阿里云企业邮箱购买流程,企业邮箱分为免费版、标准版、集团版和尊享版,阿里云百科分享企业邮箱版本区别,企业邮箱收费标准价格表,以及阿里企业邮箱详细购买流程: 目录 阿里云企业邮箱购买流程 一、阿里云账号注册及…

OpenAI 刚刚宣布了海量更新

OpenAI 刚刚宣布了海量更新,增加函数调用,支持更长上下文,价格更低! ​新模型上架 1、gpt-4-0613 2、gpt-4-32k-0613 3、gpt-3.5-turbo-0613 4、gpt-3.5-turbo-16k 部分模型降价 1、text-embedding-ada-002:$0.00…

DevExpress WinForms功能区组件,让业务应用创建更轻松!(上)

DevExpress WinForms的Ribbon(功能区)组件灵感来自于Microsoft Office,并针对WinForms开发人员进行了优化,它可以帮助开发者轻松地模拟当今最流行的商业生产应用程序。 PS:DevExpress WinForm拥有180组件和UI库&#…

Linux安装SQLServer数据库

Linux安装SQLServer数据库 文章目录 Linux安装SQLServer数据库SQLServer是什么SQLServer的安装安装要求安装步骤安装配置安装命令行工具 SQLServer是什么 美国 Microsoft 公司推出的一种关系型数据库系统。SQL Server 是一个可扩展的、高性能的、为分布式客户机/服务器计算所设…

[PostgreSQL-16新特性之EXPLAIN的GENERIC_PLAN选项]

随着PostgreSQL-16beta1版本的发布,我们可以发现,对于我们时常使用的explain增加了一个GENERIC_PLAN选项。这个选项是允许了包含参数占位符的语句,如select * from tab01 where id$1;等等这种语句,让其生成不依赖于这些参数值的通…

两个HC-05蓝牙之间的配对

两个HC-05蓝牙之间的配对 文章目录 两个HC-05蓝牙之间的配对1.进入AT指令模式后,先确定是否为AT模式:2.获取模块A,B的地址3.将蓝牙A配置为主模式,将蓝牙B配置为从模式:4.设置模块通信波特率,蓝牙模块A和B的配置需要相同6.验证 买了…

目标检测数据集---玻璃瓶盖工业缺陷数据集

✨✨✨✨✨✨目标检测数据集✨✨✨✨✨✨ 本专栏提供各种场景的数据集,主要聚焦:工业缺陷检测数据集、小目标数据集、遥感数据集、红外小目标数据集,该专栏的数据集会在多个专栏进行验证,在多个数据集进行验证mAP涨点明显,尤其是小目标、遮挡物精度提升明显的数据集会在该…

儿童遗留监测成为「加分项」,多种技术路线「争夺战」一触即发

儿童遗留密闭车内,温度可以在短短15分钟内达到临界水平,从而可能导致中暑和死亡,尤其是当汽车在太阳底下暴晒。 按照Euro NCAP给出的指引,与车祸相比,儿童因车辆中暑而死亡的情况较少,但却是完全可以避免的…

计算机网络开荒4-网络层

文章目录 一、网络层概述1.1 路由转发1.2 建立连接1.3 网络服务类型 二、虚拟电路与数据报网络2.1 虚电路Virtual circuits VC网络2.1.1 VC 实现2.1.1 虚电路信令协议(signaling protocols) 2.2 数据报网络2.3 对比 三、Internet网络的网络层 IP协议3.1 IP分片3.1.1 最大传输单…

中创|数据中心集聚,算力企业环绕,郑州:力争打造中部最强数据中心集群

信息时代,算力就是生产力。从田间到车间、从陆地到天空,算力的应用已经在方方面面“大显身手”。不仅是在存储领域,在具体的应用服务领域,算力也无处不在。 手机支付、网上购物、精准导航、人脸识别……这些人们熟悉的生活场景&a…

如何在telnet连接的情况下下载上传文件

1.下载tftp文件 TFTP下载-TFTP正式版下载[电脑版]-华军软件园 2.选择自己PC机所在的IP 3.telnet登录到设备 4.上传下载 //上传: 从Clinet(设备)上传文件到Server(PC机)时, 使用下面的命令 tftp –p –…

cesium学习笔记

cesium入门笔记 一、下载源码,源码介绍二、html案例体验三、cesium中的类介绍1.它们分别是:2.四大类的完整演示代码: 四、cesium的坐标与转换五、相机系统介绍六、地图、地形的加载七、建筑体添加和使用八、空间数据加载1、加载数据2、对加载…

python中变量与字符串详解!!

❄️作者介绍:奇妙的大歪❄️ 🎀个人名言:但行前路,不负韶华!🎀 🐽个人简介:云计算网络运维专业人员🐽 前言 初学者经常会遇到的困惑是,看书上或者是听课都懂…

数据库:mysqldump用法详解

目录 一、命令格式详解 1.1 语法格式 1.2 常用参数 1.3 完整参数 二、mysqldump常见的几个错误 2.1、提示命令未找到 -bash: mysqldump: 未找到命令 2.2、 the command line interface can be insecure 2.3、Gotpacket bigger than ‘max_allowed_packet‘ bytes 一、命令格式详…

GPT-4官方使用经验都在里面;Stability AI联合Clipdrop推出一键改变图像比例

🦉 AI新闻 🚀 Stability AI联合Clipdrop推出扩图工具Uncrop,一键改变图像比例 摘要:Stability AI联合Clipdrop推出的Uncrop Clipdrop是一个终极图像比例编辑器。它可以补充任何现有照片或图像,来更改任何图像的比例。…

apple pencil二代平替笔哪个好用?ipad平替笔合集

现在很多人都在用IPAD记录,或者用IPAD画图。还有就是,大部分的IPAD用户,都是以实用为主,他们觉得,要想让IPAD更加实用,就一定要有一款好用的电容笔。其实,如果只是用来做笔记,或者只…

43从零开始学Java之一文详解初学者难以理解的多态

作者:孙玉昌,昵称【一一哥】,另外【壹壹哥】也是我哦 千锋教育高级教研员、CSDN博客专家、万粉博主、阿里云专家博主、掘金优质作者 前言 我们知道,面向对象有三大特征:封装、继承和多态。现在我们已经了解了封装和继…

IBM Spectrum LSF 针对要求苛刻、任务关键型计算环境的全面工作负载管理

IBM Spectrum LSF 针对要求苛刻、任务关键型计算环境的全面工作负载管理 亮点 通过卓越的可重复性能加快求解时间; 使用可靠且可扩展的架构管理大量作业; 面向管理员和用户的直观界面提高工作效率; IBM Spectrum LSF 系列是一套完整的工作负载管理解决方案组合 &#xff0…

由于找不到msvcr120.dll,无法继续执行代码,多种解决方法修复这个故障

在使用电脑时,我们常常会遇到各种各样的问题。其中一个比较常见的问题是“由于找不到msvcr120.dll,无法继续执行代码”。这个问题可能会让一些用户感到困惑和无助。那么,究竟什么是msvcr120.dll?它缺失了会有什么后果?如何修复这个…

“拓界·创变”——2023K+全球软件研发行业创新峰会上海站圆满收官

众望所归!6月9-10日,为期两天的K全球软件研发行业创新峰会,于上海明捷万丽大酒店成功举办。本届峰会吸引了来自金融、通信、互联网、消费电子、企服等各行业逾千位技术从业者的参与,活动现场大咖云集、座无虚席,同时也…