当前位置: 首页 > news >正文

【MYSQL】-函数

在这里插入图片描述
💖作者:小树苗渴望变成参天大树🎈
🎉作者宣言:认真写好每一篇博客💤
🎊作者gitee:gitee✨
💞作者专栏:C语言,数据结构初阶,Linux,C++ 动态规划算法🎄
如 果 你 喜 欢 作 者 的 文 章 ,就 给 作 者 点 点 关 注 吧!

文章目录

  • 前言
  • 一、日期函数
  • 二、字符串函数
  • 三、数学函数
  • 四、其他函数
  • 五、总结


前言

前一篇我们讲解完毕了表的基本操作,我们在常用的是select,今天我们讲解的是mysql的一系列函数,在我们语言层面有许多自带函数让我们可以更好去使用,在sql中也有许多好用的函数让我们去使用,在上篇已经使用过了聚集函数,他的好处已经让我们感受到了,今天说的函数也特别方便。话不多说,我们开始进入正文。

一、日期函数

在这里插入图片描述

后面的我们提到的日期就是年月日,时间就是时分秒。

  1. 获取日期:
    在这里插入图片描述

  2. 获取时间:
    在这里插入图片描述

  3. 获取日期时间:
    在这里插入图片描述
    在这里插入图片描述
    这两个函数的效果是一样的,但是本质不一样。

  4. 获取日期时间中的日期部分(函数可以嵌套使用)
    在这里插入图片描述

  5. 在日期的基础上加日期或者时间
    在这里插入图片描述
    在这里插入图片描述

  6. 在日期的基础上减日期或者时间
    在这里插入图片描述
    在这里插入图片描述

date_add和date_sub函数的第一个参数可以不用是完整的日期和时间,单纯的日期也是可以的。

  1. 求两个日期的差
    在这里插入图片描述

总结
其他的不传参的函数都是字面意思,前三个函数和数据类型的日期类型相似。传参的函数看到data说明必须要传日期,但是也可以把时间带上。

案例1:
创建一张表,记录生日
在这里插入图片描述
添加当前日期:

insert into tmp(birthday) values(current_date());

在这里插入图片描述

案例2:
创建一个留言表
在这里插入图片描述
插入数据
在这里插入图片描述
显示所有留言信息,发布日期只显示日期,不用显示时间

select content,date(sendtime) from msg;

在这里插入图片描述
请查询在2分钟内发布的帖子

------|-----------|-------------|------------------
初始时间 now() 初始时间+2min

select * from msg where date_add(sendtime, interval 2 minute) > now();

在这里插入图片描述

二、字符串函数

在这里插入图片描述
有几个函数非常简单,就不使用表中的数据給大家演示了。

  1. charset(str)
    在这里插入图片描述

  2. instr(str,substring) 返回子串的起始位置
    在这里插入图片描述

  3. ucase(str) 转成大写、lcase(str) 转成小写(不是字母的不做处理)
    在这里插入图片描述

  4. left(str,len) 从str中左边l取len个字符、right(str,len) 从str中右边l取en个字符

在这里插入图片描述
5. strcmp(str1,str2) 比较两个字符串是否相等(相等为0,不想等为-1)
在这里插入图片描述

接下来的函数操作通过表中的数据給大家演示

  1. exam_result表
    在这里插入图片描述

(1)concat
要求显示exam_result表中的信息,显示格式:“XXX的语文是XXX分,数学XXX分”

select concat(name, '的语文是',chinese,'分,数学是',math,'分') as '分数' from exam_result;

在这里插入图片描述
(2)length(str)
求exam_result表中学生姓名占用的字节数
在这里插入图片描述

注意:length函数返回字符串长度,以字节为单位。如果是多字节字符则计算多个字节数;
如果是单字节字符则算作一个字节。比如:字母,数字算作一个字节,中文表示多个字节数
(与字符集编码有关)

  1. emp表
    在这里插入图片描述

(1)replace(str s_str,r_str) 在str中用r_str替换s_str

将EMP表中所有名字中有S的替换成’上海’

 select ename,replace(ename,'S','上海') from emp;

在这里插入图片描述

(2)substring(str,pos,len)从str的pos位置,取len个字符
截取EMP表中ename字段的第二个到第三个字符

select substring(ename,2,2),ename from emp;

在这里插入图片描述

以首字母小写的方式显示所有员工的姓名
在这里插入图片描述

substring第三个参数不写默认取到结尾

三、数学函数

在这里插入图片描述

  1. abs(num)绝对值
    在这里插入图片描述
  2. bin(num) 十进制转换二进制
    在这里插入图片描述

我们看到带有小数的数转二进制只取前面整数部分进行转换

  1. hex(num) 转换成十六进制
    在这里插入图片描述
  2. conv(num,from_num,to_num) 进制转换(相对灵活)
    在这里插入图片描述
  3. format(num,len),控制num的精度,格式化(小数也四舍五入)
    在这里插入图片描述
  4. rand(),随机数,返回随机浮点数,范围[0.0,1.0)
    在这里插入图片描述
  5. mod(num1,num2) 求模

在这里插入图片描述
8. ceiling(num) 向上取整,floor(num)向下取整
在这里插入图片描述
在这里插入图片描述

四、其他函数

  1. user()查询当前用户
    在这里插入图片描述
  2. database()显示当前正在使用的数据库
    在这里插入图片描述
  3. ifnull(val1, val2) 如果val1为null,返回val2,否则返回val1的值
    在这里插入图片描述
  4. mds(str) 对一个字符串进行md5摘要,摘要后得到一个32位字符串
    password()函数,MySQL数据库使用该函数对用户加密

对于数据库,关于密码有关的字段,最好都要进行加密,防止别人盗取你的表数据知道了用户的密码就麻烦。
在这里插入图片描述

md5是一种哈希算法生成一个固定长度的字符串插入到表中的,password()是sql自带的。

五、总结

我们这些函数在必要的时候是非常有用的,希望大家掌握

查找字符串中逗号出现的次数大家先不要看答案哦

select id, LENGTH(string) - LENGTH(replace(string, ',','')) cnt from strings;

相关文章:

【MYSQL】-函数

💖作者:小树苗渴望变成参天大树🎈 🎉作者宣言:认真写好每一篇博客💤 🎊作者gitee:gitee✨ 💞作者专栏:C语言,数据结构初阶,Linux,C 动态规划算法🎄 如 果 你 …...

传统船检已经过时?AR智慧船检来助力!!

想象一下,在茫茫大海中,一艘巨型货轮正缓缓驶过。船上的工程师戴着一副先进的AR眼镜,他们不再需要反复翻阅厚重的手册,一切所需信息都实时显示在眼前。这不是科幻电影的场景,而是智慧船检技术带来的现实变革。那么问题…...

JAVA进化史: JDK11特性及说明

JDK 11(Java Development Kit 11)是Java平台的一个版本,于2018年9月发布。这个版本引入了一些新特性和改进,以下是其中一些主要特性。 HTTP Client(标准化) JDK 11引入了一个新的HTTP客户端,用…...

模型 安索夫矩阵

本系列文章 主要是 分享模型,涉及各个领域,重在提升认知。产品市场战略。 1 安索夫矩阵的应用 1.1 江小白的多样化经营策略 使用安索夫矩阵来分析江小白市场战略。具体如下: 根据安索夫矩阵,江小白的现有产品是其白酒产品&…...

性能手机新标杆,一加 Ace 3 发布会定档 1 月 4 日

12 月 27 日,一加宣布将于 1 月 4 日发布新品一加 Ace 3。一加 Ace 系列秉持「产品力优先」理念,从一加 Ace 2、一加 Ace 2V 到一加 Ace 2 Pro,款款都是现象级爆品,得到了广大用户的认可与支持。作为一加 2024 开年之作&#xff0…...

Vue 框架前导:详解 Ajax

Ajax Ajax 是异步的 JavaScript 和 XML。简单来说就是使用 XMLHttpRequest 对象和服务器通信。可以使用 JSON、XML、HTML 和 text 文本格式来发送和接收数据。具有异步的特性,可在不刷新页面的情况下实现和服务器的通信,交换数据或者更新页面 01. 体验 A…...

3分钟快速安装 ClickHouse、配置服务、设置密码和远程登录以及修改数据目录

下面是一个完整的 ClickHouse 安装和配置流程,包括安装 ClickHouse、配置服务、设置密码和远程登录以及修改数据目录。 安装 ClickHouse 安装 YUM 工具包: sudo yum install -y yum-utils添加 ClickHouse YUM 仓库: sudo yum-config-manager…...

PHP8使用PDO对象增删改查MySql数据库

PDO简介 PDO(PHP Data Objects)是一个PHP扩展,它提供了一个数据库访问层,允许开发人员使用统一的接口访问各种数据库。PDO 提供了一种用于执行查询和获取结果的简单而一致的API。 以下是PDO的一些主要特点: 统一接口…...

证明:切线垂直于半径

证明: 切线垂直于过切点的半径。 下面是网上最简单的证明方法。 证明: 利用反证法。 如下图所示,直线AB和圆O切于点A,假设OA 不垂直于 AB,而 O B ⊥ A B OB \perp AB OB⊥AB,则 ∠ O B A 90 \angle OB…...

普中STM32-PZ6806L开发板(STM32CubeMX创建项目并点亮LED灯)

简介 搭建一个用于驱动 STM32F103ZET6 GPIO点亮LED灯的任务;电路原理图 LED电路原理图 芯片引脚连接LED驱动引脚原理图 创建一个点亮LED灯的Keil 5项目 创建STM32CubeMX项目 New Project -> 单击 -> 芯片搜索STM32F103ZET6->双击创建 初始化时钟 调试设置 一…...

【Windows】共享文件夹拍照还原防火墙设置(入站,出站设置)---图文并茂详细讲解

目录 一 共享文件夹(两种形式) 1.1 普通共享与高级共享区别 1.2 使用 二 拍照还原 2.1 是什么 2.2 使用 三 防火墙设置(入栈,出站设置) 3.1 引入 3.2 入站出站设置 3.2.1入站出站含义 3.3入站设置 3.4安装jdk 3.5使用tomcat进行访…...

1.决策树

目录 1. 什么是决策树? 2. 决策树的原理 2.1 如何构建决策树? 2.2 构建决策树的数据算法 2.2.1 信息熵 2.2.2 ID3算法 2.2.2.1 信息的定义 2.2.2.2 信息增益 2.2.2.3 ID3算法举例 2.2.2.4 ID3算法优缺点 2.2.3 C4.5算法 2.2.3.1 C4.5算法举例 2.2.4 CART算法 2.2.4…...

基于微信小程序的停车预约系统设计与实现

基于微信小程序的停车预约系统设计与实现 项目概述 本项目旨在结合微信小程序、后台Spring Boot和MySQL数据库,打造一套高效便捷的停车预约系统。用户通过微信小程序进行注册、登录、预约停车位等操作,而管理员和超级管理员则可通过后台管理系统对停车…...

再见2023,你好2024

再见2023,你好2024 生活1月 悲伤与治愈2~4月 运动与偏爱5月 体验与美食6月 婚礼与热爱7~8月 就医与别离9~11月 陪伴与暖房12月 体验&新生 运动追剧读书总结 生活 生活是一个修罗场,来世间一场,要经历丰腴有趣的人生。去体验各种滋味&…...

年度总结|存储随笔2023年度最受欢迎文章榜单TOP15-part1

原创 古猫先生 存储随笔 2023-12-31 08:31 发表于上海 回首2023 2-8月份有近半年时间基本处于断更状态 好在8月份后小编没有松懈 (虽然2023年度总结,更像是近4个月总结) 本年度顺利加V啦! 感谢各位粉丝朋友的一路支持与陪伴 …...

微信小程序 手机号授权登录 偶尔后端解密失败

微信小程序wx.login获取code要在手机号授权前触发 <button:id"code":open-type"hasGetPrivacySetting ? getPhoneNumber|agreePrivacyAuthorization : getPhoneNumber"getphonenumber"onGetPhoneNumber"class"btn"click"cli…...

Mysql 容易忘的 sql 指令总结

目录 一、操作数据库的基本指令 二、查询语句的指令 1、基本查询语句 2、模糊查询 3、分支查询 4、 分组查询 5、分组查询 6、基本查询总结&#xff1a; 7、子查询 8、连接查询 三、MySQL中的常用函数 1、时间函数 2、字符串函数 3、聚合函数 4、运算函数 四、表…...

【SD】tile 模型 - 固定衣服 生成人物 ☑

原理1&#xff1a;tile re 生成固定衣服的人物 tile1-1 re1-1 原理2&#xff1a;tile re 生成随机衣服的人物 tile0.5-1 re0.5-1 原理3&#xff1a;更改动作 必须使用衣服LORA 才可以进行穿衣服 测试大模型&#xff1a;###最爱的模型\meinamix_meinaV11.safe…...

StackOverflowError的JVM处理方式

背景&#xff1a; 事情来源于生产的一个异常日志 Caused by: java.lang.StackOverflowError: null at java.util.stream.Collectors.lambda$groupingBy$45(Collectors.java:908) at java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169) at java.util.ArrayL…...

基于DFA算法实现敏感词过滤

何为DFA DFA&#xff0c;全称为Deterministic Finite Automaton&#xff0c;即确定有穷自动机、确定有限状态自动机或确定有限自动机 对于一个给定的属于该自动机的状态和一个属于该自动机字母表Σ的字符&#xff0c;它都能根据事先给定的转移函数转移到下一个状态&#xff0…...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行&#xff01; sudo su - 1. CentOS 系统&#xff1a; yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...

【生成模型】视频生成论文调研

工作清单 上游应用方向&#xff1a;控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...

mac 安装homebrew (nvm 及git)

mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用&#xff1a; 方法一&#xff1a;使用 Homebrew 安装 Git&#xff08;推荐&#xff09; 步骤如下&#xff1a;打开终端&#xff08;Terminal.app&#xff09; 1.安装 Homebrew…...

绕过 Xcode?使用 Appuploader和主流工具实现 iOS 上架自动化

iOS 应用的发布流程一直是开发链路中最“苹果味”的环节&#xff1a;强依赖 Xcode、必须使用 macOS、各种证书和描述文件配置……对很多跨平台开发者来说&#xff0c;这一套流程并不友好。 特别是当你的项目主要在 Windows 或 Linux 下开发&#xff08;例如 Flutter、React Na…...

基于单片机的宠物屋智能系统设计与实现(论文+源码)

本设计基于单片机的宠物屋智能系统核心是实现对宠物生活环境及状态的智能管理。系统以单片机为中枢&#xff0c;连接红外测温传感器&#xff0c;可实时精准捕捉宠物体温变化&#xff0c;以便及时发现健康异常&#xff1b;水位检测传感器时刻监测饮用水余量&#xff0c;防止宠物…...

echarts使用graphic强行给图增加一个边框(边框根据自己的图形大小设置)- 适用于无法使用dom的样式

pdf-lib https://blog.csdn.net/Shi_haoliu/article/details/148157624?spm1001.2014.3001.5501 为了完成在pdf中导出echarts图&#xff0c;如果边框加在dom上面&#xff0c;pdf-lib导出svg的时候并不会导出边框&#xff0c;所以只能在echarts图上面加边框 grid的边框是在图里…...

后端下载限速(redis记录实时并发,bucket4j动态限速)

✅ 使用 Redis 记录 所有用户的实时并发下载数✅ 使用 Bucket4j 实现 全局下载速率限制&#xff08;动态&#xff09;✅ 支持 动态调整限速策略✅ 下载接口安全、稳定、可监控 &#x1f9e9; 整体架构概览 模块功能Redis存储全局并发数和带宽令牌桶状态Bucket4j Redis分布式限…...

八、【ESP32开发全栈指南:UDP客户端】

1. 环境准备 安装ESP-IDF v4.4 (官方指南)确保Python 3.7 和Git已安装 2. 创建项目 idf.py create-project udp_client cd udp_client3. 完整优化代码 (main/main.c) #include <string.h> #include "freertos/FreeRTOS.h" #include "freertos/task.h&…...

DL00871-基于深度学习YOLOv11的盲人障碍物目标检测含完整数据集

基于深度学习YOLOv11的盲人障碍物目标检测&#xff1a;开启盲人出行新纪元 在全球范围内&#xff0c;盲人及视觉障碍者的出行问题一直是社会关注的重点。尽管技术不断进步&#xff0c;许多城市的无障碍设施依然未能满足盲人出行的实际需求。尤其是在复杂的城市环境中&#xff…...

Java在word中指定位置插入图片。

Java使用&#xff08;Poi-tl&#xff09; 在word&#xff08;docx&#xff09;中指定位置插入图片 Poi-tl 简介Maven 依赖配置Poi-tl 实现原理与步骤1. 模板标签规范2.完整实现代码3.效果展示 Poi-tl 简介 Poi-tl 是基于 Apache POI 的 Java 开源文档处理库&#xff0c;专注于…...