当前位置: 首页 > 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…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄

文&#xff5c;魏琳华 编&#xff5c;王一粟 一场大会&#xff0c;聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中&#xff0c;汇集了学界、创业公司和大厂等三方的热门选手&#xff0c;关于多模态的集中讨论达到了前所未有的热度。其中&#xff0c;…...

stm32G473的flash模式是单bank还是双bank?

今天突然有人stm32G473的flash模式是单bank还是双bank&#xff1f;由于时间太久&#xff0c;我真忘记了。搜搜发现&#xff0c;还真有人和我一样。见下面的链接&#xff1a;https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

拉力测试cuda pytorch 把 4070显卡拉满

import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试&#xff0c;通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小&#xff0c;增大可提高计算复杂度duration: 测试持续时间&#xff08;秒&…...

鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南

1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;使用DevEco Studio作为开发工具&#xff0c;采用Java语言实现&#xff0c;包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...

云原生玩法三问:构建自定义开发环境

云原生玩法三问&#xff1a;构建自定义开发环境 引言 临时运维一个古董项目&#xff0c;无文档&#xff0c;无环境&#xff0c;无交接人&#xff0c;俗称三无。 运行设备的环境老&#xff0c;本地环境版本高&#xff0c;ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...

Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信

文章目录 Linux C语言网络编程详细入门教程&#xff1a;如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket&#xff08;服务端和客户端都要&#xff09;2. 绑定本地地址和端口&#x…...

动态 Web 开发技术入门篇

一、HTTP 协议核心 1.1 HTTP 基础 协议全称 &#xff1a;HyperText Transfer Protocol&#xff08;超文本传输协议&#xff09; 默认端口 &#xff1a;HTTP 使用 80 端口&#xff0c;HTTPS 使用 443 端口。 请求方法 &#xff1a; GET &#xff1a;用于获取资源&#xff0c;…...

C语言中提供的第三方库之哈希表实现

一. 简介 前面一篇文章简单学习了C语言中第三方库&#xff08;uthash库&#xff09;提供对哈希表的操作&#xff0c;文章如下&#xff1a; C语言中提供的第三方库uthash常用接口-CSDN博客 本文简单学习一下第三方库 uthash库对哈希表的操作。 二. uthash库哈希表操作示例 u…...

windows系统MySQL安装文档

概览&#xff1a;本文讨论了MySQL的安装、使用过程中涉及的解压、配置、初始化、注册服务、启动、修改密码、登录、退出以及卸载等相关内容&#xff0c;为学习者提供全面的操作指导。关键要点包括&#xff1a; 解压 &#xff1a;下载完成后解压压缩包&#xff0c;得到MySQL 8.…...