【MySQL】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)

前言

大家好吖,欢迎来到 YY 滴MySQL系列 ,热烈欢迎! 本章主要内容面向接触过C++ Linux的老铁
主要内容含:
在这里插入图片描述

欢迎订阅 YY滴C++专栏!更多干货持续更新!以下是传送门!

  • YY的《C++》专栏
  • YY的《C++11》专栏
  • YY的《Linux》专栏
  • YY的《数据结构》专栏
  • YY的《C语言基础》专栏
  • YY的《初学者易错点》专栏
  • YY的《小小知识点》专栏
  • YY的《单片机期末速过》专栏
  • YY的《C++期末速过》专栏
  • YY的《单片机》专栏
  • YY的《STM32》专栏
  • YY的《数据库》专栏
  • YY的《数据库原理》专栏

目录

  • 一.数据库函数的应用场景&常见函数盘点介绍
    • 1.函数基本概念
    • 2.常见函数一览
    • 3.数据库函数的应用场景
  • 二.字符串函数
    • 1.字符串函数盘点&语法
    • 2.调用字符串函数案例cv语句&substring注意点
    • 3.调用字符串函数效果演示
    • 4.需求练习
  • 三.数值函数
    • 1.数值函数盘点
    • 2.调用数值函数案例cv语句
    • 3.调用数值函数效果演示
    • 4.需求练习
  • 四.日期函数
    • 1.日期函数盘点
    • 2.调用日期函数案例cv语句
    • 3.需求练习
  • 五.流程控制函数
    • 1.流程控制函数盘点
    • 2.调用流程控制函数演示&“空串也算串”注意事项
    • 3.需求练习1
    • 4.需求练习2
      • 1.环境植入
      • 2.需求练习正文

一.数据库函数的应用场景&常见函数盘点介绍

1.函数基本概念

  • 函数 是指一段可以直接被另一段程序调用的程序或代码。
  • 我们通常借助mysql的 内部自带函数 来计算

2.常见函数一览

  • 如下所示
    在这里插入图片描述

3.数据库函数的应用场景

  • 如下所示
    在这里插入图片描述

二.字符串函数

1.字符串函数盘点&语法

  • 如下所示
    在这里插入图片描述
SELECT函数(参数);

2.调用字符串函数案例cv语句&substring注意点

-- concat
select concat('Hello' , ' NySQL');

-- lower
select Lower('HelLo');

-- upper
select upper('Hello');

-- lpad
select lpad('01', 5, '-');

-- rpad
select rpad('01', 5,'-');

- substring
- select substring('Hello NysQL',1,5); //注意索引号从1开始

substring注意点:

  • 注意索引号从1开始

3.调用字符串函数效果演示

  • 效果一览
    在这里插入图片描述

4.需求练习

--1.由于业务需求变更,企业员工的工号,统一为5位数,目前不足5位数的全部在前面补0。比如:1号员工的工号应该为00001。
update emp set workno = Lpad(workno, 5,1 '0');

三.数值函数

1.数值函数盘点

  • 如下所示:
    在这里插入图片描述

2.调用数值函数案例cv语句

-- ceil
select ceil(1.1);

-- floor
select floor(1.9);

-- mod
select mod(3,4);

-- rand
select rand();

-- round
select round(2.34,2);

3.调用数值函数效果演示

  • 如下所示
    在这里插入图片描述

4.需求练习

--1.通过数据库的函数,生成一个六位数的随机验证码
select round(rand()*1000000 , 0);
-- 我们一开始可能会这样编写,但会出现5位数情况;随机数介于0-1之间,可能0.019255
-- 我们要补06位数

-- 改善后 (左补0)
select Lpad(round(rand()*1000000, 0), 6, '0');

四.日期函数

1.日期函数盘点

  • 如下所示:
    在这里插入图片描述

2.调用日期函数案例cv语句

--日期函数
-- curdate()
select curdate();

-- curtime()
select curtime();

-- now()
select now();

-- 年月日
seLect YEAR(now());

select MONTH(now());

select DAY(now());

--/减日期
-- date_add
select date_add(now(), INTERVAL 70 YEAR );

-- datediff
select datediff('2021-12-01', '2021-11-01');

3.需求练习

案例:查询所有员工的入职天数,并根据入职天数倒序排序
select name, datediff(curdate(), entrydate) as 'entrydays' from emp order by entrydays desd;

五.流程控制函数

1.流程控制函数盘点

  • 如下所示
    在这里插入图片描述

2.调用流程控制函数演示&“空串也算串”注意事项

--流程控制函数
-- if
select if(false,'Ok','Error');

-- ifnull
select ifnull('Ok','Default');

select ifnull('','Default');

select ifnull(null,'Default');
  • “空串也算串”注意事项 :
  • select ifnull('','Default');返回结果
    在这里插入图片描述
  • select ifnull(null,'Default');返回结果
    在这里插入图片描述

3.需求练习1

-- case when then else end
--需求:查询emp表的员工姓名和工作地址(北京/上海---->一线城市,其他---->二线城市)
select
    name,
    case workaddress when'北京'then'一线城市'when'上海'then'一线城市'else'二线城市'end
from emp;

-- 取别名
select
    name,
    (case workaddress when'北京'then‘一线城市'when‘上海'then'一线城市'else‘二线城市'end)as‘工作地址'
    from emp;

4.需求练习2

1.环境植入

  • 如下所示我们先植入环境
    在这里插入图片描述
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, 99),(3, 'Jack',56,98,76);

2.需求练习正文

  • 我们要将成绩换算成
  1. 大于85分"优秀"
  2. 大于60分小于85分"及格"
  3. 小于60分"不及格"
select
   id,
   name,
   (case when math >=85 then'优秀'when math >=60 then'及格'else'不及格'end)'数学',
   (case when english>= 85 then'优秀'when english >=60 then'及格'else'不及格'end)'英语',
   (case when chinese >=85 then'优秀'when chinese >=60 then'及格'else'不及格'end)'语文'
from score;

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

郭天祥新概念51单片机(第四期读书笔记)

时钟周期、状态周期、机器周期、指令周期与晶振频率之间的关系 1、晶振频率与脉冲的关系 假设单片机的晶振频率是12MHz,那么它的一个脉冲为1/12微秒;晶振单位时间发出的脉冲则为: 12 ∗ 1 0 6 12*10^6 12∗106。 假设单片机的晶振频率是4MH…

【微众银行笔试题汇总】 2024-03-31-微众银行春招笔试题-三语言题解(CPP/Python/Java)

🍭 大家好这里是KK爱Coding ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新微众银行近期的春秋招笔试题汇总~ 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢&…

全流程基于GIS、python机器学习技术的地质灾害风险评价与信息化建库实践应用

将结合项目实践案例和科研论文成果进行讲解。入门篇,ArcGIS软件的快速入门与GIS数据源的获取与理解;方法篇,致灾因子提取方法、灾害危险性因子分析指标体系的建立方法和灾害危险性评价模型构建方法;拓展篇,GIS在灾害重…

鸿蒙 UIAbility和Compent 生命周期

一、UIAbility的生命周期 在UIAbility的使用过程中,会有多种生命周期状态,掌握UIAbility的生命周期,对于应用的开发非常重要。 1、UIAbility的生命周期 UIAbility的生命周期主要分为以下4个: Create---Foreground---Background---…

梨花带雨网页音乐播放器二开优化修复美化版全开源版本源码

源码简介 最新梨花带雨网页音乐播放器二开优化修复美化版全开源版本源码下载 梨花带雨播放器基于thinkphp6开发的XPlayerHTML5网页播放器前台控制面板,支持多音乐平台音乐解析。二开内容:修复播放器接口问题,把接口本地化,但是集成外链播放器…

一文读懂:设计顶尖用户体验的网站,必看!

在设计网站的过程中,我们需要发散思维,不仅要在脑海中构建丰富的网站原型框架,还要在我们面前实现。这种方法可以以最低的成本创造最大的效益,测试当前设计的实用性。它还可以测试用户对网站的想法和感受,全面判断网站…

AI 时代,程序员的出路在何方?

前言 随着 ChatGPT 的横空出世,给全球带来了巨大冲击,各种大语言模型如雨后春笋不断出现。国外如谷歌 Bard、Anthropic 的 Claude,国内如百度文心一言、阿里通义千问、讯飞星火认知大模型、昆仑万维天工大模型等。 现在的大语言模型比以前的…

泰克Tektronix MDO3054混合域示波器

181/2461/8938产品概述: Tektronix MDO3054 示波器,混合域,500 MHz,4 通道,5 GS/s 泰克 MDO3054 混合域示波器是终极 6 合 1 集成示波器,包括可选的集成频谱分析仪、任意函数发生器、逻辑分析仪、协议分析…

IDEA报错,`java.io.NotSerializableException`,解决:一个类只有实现了Serializable接口,它的对象才是可序列化的

问题:IDEA报错,java.io.NotSerializableException 解决办法:在出问题的类中加上implements Serializable,如下所示: 原因:当要将该实体类对象保存至某个地方时(我这里是想将Catalog2Vo保存至R…

Linux安装JDK1.8

前言:本文内容为实操记录,仅供参考! Ubuntu配置多版本jdk:http://t.csdnimg.cn/0UcTf 一、下载 官方下载(需要注册Oracle账号): Java Downloads | Oracle 国内镜像下载&…

YOLOv8模型剪枝实战:Network Slimming网络瘦身方法

课程链接:YOLOv8模型剪枝实战:Network Slimming网络瘦身方法_在线视频教程-CSDN程序员研修院 YOLOv8是一个当前非常流行的目标检测器,本课程使用Network Slimming(网络瘦身)剪枝方法对YOLOv8进行模型剪枝,…

关于不同AR(增强现实)SDK(软件开发工具包)的汇总和特性描述

以下是每个AR SDK的核心内容概述: ARCore 开发者:Google支持平台:Android(部分设备不支持)功能:运动追踪、平面追踪、点云图、云锚点、光照估计、环境探针、人脸追踪、2D图片追踪、人物遮挡、射线测试。官网链接:ARCoreARKit 开发者:Apple支持平台:iOS(iPhone和iPad)…

【内存泄漏】数据库连接connectionPhantomRefs内存过大

1. 问题背景 线上出现内存报警,内存增长曲线如下 dump内存文件,临时重新发布服务。后经排查发现是数据库连接池设置不合理以及mysql-connector-java 5.1.49有内存泄漏bug。以下为对此问题的分析及问题总结。 1.1 应用背景 数据库连接池: …

FastEI论文阅读

前言 研究FastEI有很长时间了,现在来总结一下,梳理一下认知。论文地址:https://www.nature.com/articles/s41467-023-39279-7,Github项目地址:https://github.com/Qiong-Yang/FastEI。 概要 这篇文章做的工作是小分子…

【御控物联】JavaScript JSON结构转换(10):数组To数组——转换映射方式

文章目录 一、JSON结构转换是什么?二、术语解释三、案例之《JSON数组 To JSON数组》四、代码实现五、在线转换工具六、技术资料 一、JSON结构转换是什么? JSON结构转换指的是将一个JSON对象或JSON数组按照一定规则进行重组、筛选、映射或转换&#xff0…

鸿蒙开发-ArkTS语言-基础类库

鸿蒙开发-UI-交互事件-通用事件 鸿蒙开发-UI-交互事件-键鼠事件 鸿蒙开发-UI-交互事件-焦点事件 鸿蒙开发-UI-交互事件-手势事件 鸿蒙开发-UI-web 鸿蒙开发-UI-web-页面 文章目录 前言 一、ArkTS语言基础类库概述 1. 异步并发和多线程并发能力 2. 提供常见容器类库的增删改查能…

电机选型与直线模组(简化版)

2-1电机分类和普通电机选型 1、电机及其原理的基本认知: 电动机我们平时简称电机,大部分情况下指的都是通电后,输出轴会旋转运动的设备。即将电能转换为机械能,供我们使用以驱动机构运行。电机简单的讲,其实就是一个…

用python,将有道词典中的生词导入扇贝单词

我试过有道词典和扇贝单词,个人感觉扇贝单词记忆功能非常好用,但是扇贝单词没有pc版,而有道在这方面就做的很好。博主平时都是用有道查生词,那有没有办法将有道词典中的生词导入扇贝中呢?下面的过程看上去很复杂&#…

护眼台灯什么牌子好一点,五大热销护眼台灯品牌推荐

台灯已成为每个家庭中不可或缺的照明设备,它的作用不仅限于在夜晚提供充分的光亮,还能迅速营造出适宜的氛围,为用眼提供一个更佳的环境。随着生活品质的提高,人们对台灯的期望也逐步升级,智能化和护眼功能逐渐成为消费…

Python文件操作命令

文件操作 我知道你最近很累,是那种看不见的、身体上和精神上的疲惫感,但是请你一定要坚持下去。就算无人问津也好,技不如人也好,千万别让烦躁和焦虑毁了你的热情和定力。别贪心,我们不可能什么都有,也别灰心…