⑥ 【MySQL函数】字符串函数、数值函数、日期函数、流程函数

news2024/10/6 14:38:24

在这里插入图片描述

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~
个人主页:.29.的博客
学习社区:进去逛一逛~

在这里插入图片描述

MySQL函数

  • ⑥ 字符串函数、数值函数、日期函数、流程函数
    • 1. 字符串函数
    • 2. 数值函数
    • 3. 日期函数
    • 4. 流程函数


⑥ 字符串函数、数值函数、日期函数、流程函数


1. 字符串函数

常见字符串函数

  • ①字符串拼接,将S1,S2,S3…凭借成一个字符串

    • CONCAT(S1,S2,...Sn)
      
  • ②将字符串str全部传换成小写

    • LOWER(str)
      
  • ③将字符串str全部转换成大写

    • UPPER(str)
      
  • ④左填充,用字符串pad对str的左边进行填充,达到n个字符串长度

    • LPAD(str,n,pad)
      
  • ⑤右填充,用字符串pad对str的右边进行填充,达到n个字符串长度

    • RPAD(str,n,pad)
      
  • ⑥去掉字符串头部和尾部的空格

    • TRIM(str)
      
  • ⑦返回从字符串str从start位置起的len长度的字符串

    • SUBSTRING(str,start,len)
      



2. 数值函数

常见数值函数

  • ①向上取整

    • CEIL(X)
      
  • ②向下取整

    • FLOOR(X)
      
  • ③返回x/y的模(余数)

    • MOD(X,Y)
      
  • ④返回0 - 1内的随机数

    • RAND()
      
  • ⑤求参数x的四舍五入,保留y位小数

    • ROUND(X,Y)
      
  • -- 案例:通过数据库函数生成一个6位数的随机验证码
    SELECT LPAD(ROUND(RAND()*1000000,0),6,'0');
    



3. 日期函数

常见日期函数

  • ①返回当前日期

    • CURDATE()
      
  • ②返回当前时间

    • CURTIME()
      
  • ③返回当前日期和时间

    • NOW()
      
  • ④获取指定date的年份

    • YEAR(date)
      
  • ⑤获取指定date的月份

    • MONTH(date)
      
  • ⑥获取指定date的日期

    • DAY(date)
      
  • ⑦返回一个日期/时间值加上一个时间间隔exper后的时间值

    • DATE_ADD(date,INTERVAL exper type)
      
  • ⑧返回起始时间date1和结束时间date2之间的天数

    • DATEDIFF(date1,date2)
      



4. 流程函数

流程函数

  • 流程函数是一类常用的函数,可以在SQL语句中实现条件筛选,从而提高语句的效率。

  • ①如果value为true,返回t,否则返回f

    • IF(value,t,f)
      
  • ②如果value不为空,返回value1,否则返回value2

    • IFNULL(value1,value2)
      
  • ③如果val1为true,返回res1,…否则返回default默认值,END结束

    • CASE 
      WHEN [val1] THEN [res1]
      WHEN [val2] THEN [res2]
      ...
      WHEN [valn] THEN [resn]
      ELSE [default]
      END
      
  • ④如果exper的值等于val1,返回res1,…否则返回default默认值,END结束

    • CASE [expr]
      WHEN [val1] THEN [res1]
      WHEN [val2] THEN [res2]
      ...
      WHEN [valn] THEN [resn]
      ELSE [default]
      END
      
  • -- 演示
    
    -- 创建表,插入数据
    create table score(
        id int comment 'ID',
        name varchar(20) comment '姓名',
        math int comment '数学',
        english int comment '英语',
        chinese int comment '语文'
    ) comment '学员成绩表';
    
    insert into score(id, name, math, english, chinese) VALUES (1, 'Tom', 67, 88, 95 ), 
    (2, 'Rose' , 23, 66, 90),
    (3, 'Jack', 56, 98, 76);
    
    
    /*
    统计班级各个学员的成绩,展示规则如下:
    >=85 展示优秀
    >=60 展示几个
    否则 展示不及格
    */
    SELECT 
    	id,
    	NAME,
    	(CASE
    		WHEN math >= 85 THEN '优秀'
    		WHEN math >= 60 THEN '合格'
    	ELSE '不及格' END) AS '数学',
        (CASE
    		WHEN english >= 85 THEN '优秀'
    		WHEN english >= 60 THEN '合格'
    	ELSE '不及格' END) AS '英语',
    	(CASE
    		WHEN chinese >= 85 THEN '优秀'
    		WHEN chinese >= 60 THEN '合格'
    	ELSE '不及格' END) AS '语文'
    FROM score;
    
    -- 
    



在这里插入图片描述

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

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

相关文章

【社会网络分析第5期】gephi使用指南

gephi数据可视化 gephi数据可视化1、软件安装2、数据处理与导入(1)导入节点(2)导入边(3)改变节点的颜色(4)根据pagerank调整节点的大小(5)根据pagerank调整边…

笔记本分屏怎么操作?3个方法提高工作效率!

“有朋友知道笔记本怎么才能实现分屏吗?我在工作时,经常需要来回切换屏幕,效率真的太低了,有什么方法可以实现两个屏幕同时使用吗?” 在现代生活中,多任务处理已成为常态,而笔记本分屏技术为用户…

放假通知!2024年全国中小学寒假时间发布!

进入冬季, 学生们都迫不及待地 期盼着寒假的到来。 近日,全国多地已经明确了 2024年中小学寒假的起止时间。 一起来看看你所在的城市寒假放几天 北京 据“首都教育”微信公众号消息, 普通中小学、中等职业学校 义务教育阶段2024年寒…

JTS: 21 MinimumBoundingCircle 最小包裹圆

文章目录 版本代码 版本 org.locationtech.jts:jts-core:1.19.0 链接: github 代码 package pers.stu.algorithm;import org.locationtech.jts.algorithm.MinimumBoundingCircle; import org.locationtech.jts.geom.Coordinate; import org.locationtech.jts.geom.Geometry; …

ReportLab创建合同PDF

一、前言 有一个项目需要将电子签名后的报价合同和生成的发票发送给客户,这种发送给客户的文件一般都是使用PDF格式,主要是因为PDF特别适合阅读且不同平台打开文件格式不会变形,不过要在程序中生成PDF还是比较麻烦的,我们的发票是…

MySQL最新2023年面试题及答案,汇总版(7)【MySQL最新2023年面试题及答案,汇总版-第三十七刊】

文章目录 MySQL最新2023年面试题及答案,汇总版(7)01、NOW() 和 CURRENT_DATE() 有什么区别?02、CHAR和VARCHAR的区别?03、主键索引与唯一索引的区别?04、MySQL中有哪些不同的表格?05、SQL的生命周期?06、你…

nginx四层tcp负载均衡及主备、四层udp负载均衡及主备、7层http负载均衡及主备配置(wndows系统主备、负载均衡)

准备工作 服务器上安装、配置网络负载平衡管理器 windows服务器热备、负载均衡配置-CSDN博客 在windows服务器上安装vmware17 在windows上利用vmware17 搭建centos7 mini版本服务器 设置好静态ip地址(因为windows 服务器上的网络负载平衡管理器不支持dhcp的服务器…

【git】解决git报错:ssh:connect to host github.com port 22: Connection timed out 亲测有效

如题,git使用中突然报错 ssh:connect to host github.com port 22: Connection timed out 通过查阅各种资料,得知原因可能是由于电脑的防火墙或者其他网络原因导致ssh连接方式 端口22被封锁。 解决方法 一:抛弃ssh连接方式,使…

YOLOv8-Seg改进:卷积变体系列篇 | PConv,减少冗余计算和内存访问可以更有效地提取空间特征 | CVPR2023 FasterNet

🚀🚀🚀本文改进:PConv,减少冗余计算和内存访问可以更有效地提取空间特征,引入到YOLOv8,与C2f结合实现二次创新; 🚀🚀🚀PConv 亲测在多个数据集能够实现涨点,同样适用于小目标分割 🚀🚀🚀YOLOv8-seg创新专栏:http://t.csdnimg.cn/KLSdv 学姐带你学习…

第2关:多表查询

任务描述 join操作符编程要求测试说明 任务描述 本关任务: 使用join操作符实现多表查询。 join操作符 1.笛卡尔积,RXS 可直接转换为SQL语句 2.等值连接,记作 可直接转换为SQL语句 3.自然连接,记作 可转换为SQL语句 4.左外连接…

对这套BI零售数据分析方案心动,是零售人天性

零售数据分析做了这么多年,难道真的没累积点经验,摸索出一条又快又能满足绝大多数需求的数据分析捷径?别人不知道,奥威BI还真就有这么一套标准化的BI零售数据分析方案,不管是服装零售、医药连锁、商超都能利用这套方案…

基于springboot实现小学家校一体“作业帮”系统项目【项目源码】

基于springboot实现小学家校一体“作业帮”系统演示 Java语言简介 Java是由SUN公司推出,该公司于2010年被oracle公司收购。Java本是印度尼西亚的一个叫做爪洼岛的英文名称,也因此得来java是一杯正冒着热气咖啡的标识。Java语言在移动互联网的大背景下具…

如何在 macOS 中删除 Time Machine 本地快照

看到这个可用82GB(458.3MB可清除) 顿时感觉清爽,之前的还是可用82GB(65GB可清除),安装个xcode都安装不上,费解半天,怎么都解决不了这个问题,就是买磁盘情理软件也解决不了…

JavaScript中this关键字实践

● 在全局中, this关键字表示全局窗口 console.log(this);● 在严格模式下,this不指向函数本身,在非严格模式下,this指向全局窗口 console.log(this);const calcAge function (birthYear) {console.log(2037 - birthYear);cons…

Intellij IDEA 内存设置的问题 及解决

解决方案: 在IDEA上运行较大项目时,编译量很大,可能会报出 Error:java: java.lang.OutOfMemoryError: Java heap space 的错误,解决方法如下: java.lang.OutOfMemoryError是内存不足导致的,因此需要修改Id…

主从复制和读写分离

MySQL 主从复制和读写分离: 主从复制:主MySQL上的数据,新增,修改库,表,表里的数据,都会同步到从MySQL上。 MySQL的主从复制的模式:(面试题) 1,异…

【PE】PE文件结构(一)

概述:PE文件结构基础认识之DOS头和PE头(以 rpcrt4.dll 为例分析) 0x01 前言 PE(Portable Executable),即可移植的执行体。 Linux平台:ELF(Executable and Linking Format)文件结构。 Windows平…

新生儿奶瓣:原因、科普和注意事项

引言: 新生儿奶瓣是一种婴儿口腔内的常见现象,它通常被视为正常的生理发展。然而,对于一些新父母而言,了解奶瓣的原因以及如何处理是至关重要的。本文将科普新生儿奶瓣的原因,提供相关信息,并为父母和监护…

YOLOv8-Seg改进:卷积变体系列篇 | DCNv3可形变卷积基于DCNv2优化 | CVPR2023

🚀🚀🚀本文改进:DCNv3算子,基于DCNv2算子引入共享投射权重、多组机制和采样点调制,引入到YOLOv8,与C2f结合实现二次创新; 🚀🚀🚀DCNv3 亲测在多个数据集能够实现涨点,同样适用于小目标分割 🚀🚀🚀YOLOv8-seg创新专栏:http://t.csdnimg.cn/KLSdv 学姐…

算法的入门基础了解

目录 算法的特征 如何设计算法? 伪代码 “算法”一词最早出现在《周髀算经》这本书中,对应的英文单词是“algorism”(由 9 世纪的波斯数学家阿尔霍瓦里兹米提出),代指阿拉伯数字的运算规则。随着计算机的快速发展&a…