MySQL内置函数学习

引言

MySQL内置函数是MySQL数据库系统提供的预定义函数,用于执行特定的操作,如数学计算、字符串处理、日期和时间操作等。这些函数极大地简化了SQL语句的编写,提高了数据库操作的效率。

MySQL内置函数分类

MySQL内置函数可以大致分为以下几类:

  • 数学函数:用于执行数学运算,如求绝对值、平方根、三角函数等。
  • 字符串函数:用于处理字符串,如连接字符串、查找字符串、替换字符串等。
  • 日期和时间函数:用于处理日期和时间,如获取当前日期、计算日期差等。
  • 聚合函数:用于对一组值进行计算,如求和、平均值、最大值、最小值等。
  • 其他函数:包括系统信息函数、加密函数等。

常用的MySQL内置函数

数学函数

1、ABS(x)

描述:返回x的绝对值;

示例:

select abs(-996);

结果:

2、SQRT(x)

描述:返回x的平方根

示例:

select sqrt(007);

结果:

3、ROUND(x,y)

描述:将x四舍五入到y位小数

示例:

select round(3.141592653,2);

结果:

4、CEIL(x)

描述:返回大于或等于x的最小整数

示例:

select ceil(3.14);

结果:

5、FLOOR(x)

描述:返回小于或等于x的最大整数

示例:

select floor(3.14);

结果:

6、MOD(x,y)

描述:返回x除以y的余数

示例:

select mod(996,7);

结果:

字符串函数

1、CONCAT(s1,s2,...)

描述:连接多个字符串

示例:

select concat('Hello','World');

结果:

2、LENGTH(s)

描述:返回字符串s的长度

示例:

select length('Hello World');

结果:

3、UPPER(s)

描述:将字符串s中的字母转换为大写

示例:

select upper('Hello World');

结果:

4、LOWER(s)

描述:将字符串s中的字母转换为小写

示例:

select lower('Hello','World');

结果:

5、SUBSTRING(s,start,length)

描述:从字符串s的指定位置开始提取子字符串

示例:

select substring('HelloWorld',5,3);

结果:

日期和时间函数

1、NOW()

描述:返回当前日期和时间

示例:

select now();

结果:

2、CURDATE()

描述:返回当前日期

示例:

select curdate();

结果:

3、CURTIME()

描述:返回当前时间

示例:

select curtime();

结果:

4、DATE_FORMAT(date,format)

描述:以指定格式显示日期

示例:

select date_format(now(),'%Y-%m-%d');

结果:

聚合函数

1、COUNT(*)

描述:统计行数

2、SUM(column)

描述:计算指定列的总和

3、AVG(column)

描述:计算指定列的平均值

4、MAX(column)

描述:返回指定列的最大值

5、MIN(column)

描述:返回指定列的最小值

聚合函数就不举例了,有兴趣的可以看博主之前写的文章:MySQL常用函数:IF、SUM等用法

系统信息函数

1、USER()

描述:返回当前用户的用户名

示例:

select user();

结果:

2、VERSION()

描述:返回MySQL服务器的版本号

示例:

select version();

结果:

3、DATABASE()

描述:返回当前使用的数据库

示例:

select database();

结果:

4、CURRENT_USER()

描述:返回当前使用的数据库

示例:

select database();

结果:

加密函数

1、PASSWORD(str)

描述:对字符串进行加密,用于存储密码。

示例:

select password('hello');

结果:

2、MD5(str)

描述:计算字符串的MD5哈希值。

示例:

select md5('hello');

结果:

3、SHA1(str)

描述:计算字符串的SHA1哈希值。

示例:

select sha1('hello');

结果:

总结

MySQL内置函数种类丰富,功能强大,可以帮助我们高效地处理各种数据。在实际开发中,合理地运用这些函数可以简化SQL语句,提高查询效率。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小程序入门学习(四)之全局配置

一、 全局配置文件及常用的配置项 小程序根目录下的 app.json 文件是小程序的全局配置文件。常用的配置项如下: pages:记录当前小程序所有页面的存放路径 window:全局设置小程序窗口的外观 tabBar:设置小程序底部的 tabBar 效…

【Web】AlpacaHack Round 7 (Web) 题解

Treasure Hunt flag在md5值拼接flagtxt的文件里,如 d/4/1/d/8/c/d/9/8/f/0/0/b/2/0/4/e/9/8/0/0/9/9/8/e/c/f/8/4/2/7/e/f/l/a/g/t/x/t 访问已经存在的目录状态码是301 访问不存在的目录状态码是404 基于此差异可以写爆破脚本 这段waf可以用url编码绕过 做个lab …

android studio 读写文件操作(应用场景三)

android studio版本:2023.3.1 patch2 例程:filesaveandread 其实我写这个都是我记录我要做后个数独小游戏,每一个都是为了解决一个问题。即是分享也是备忘,反正我什么都不会,就是一顿瞎改,不行就研究。这…

c++:timer

1.设置休眠时间sleep_for 添加头文件 #include <thread> #include <iostream> #include <chrono> #include <thread>int main(int argc, char const *argv[]) {// 休眠2秒std::this_thread::sleep_for(std::chrono::seconds(2));// 休眠500毫秒std:…

【开源】A064—基于JAVA的民族婚纱预定系统的设计与实现

&#x1f64a;作者简介&#xff1a;在校研究生&#xff0c;拥有计算机专业的研究生开发团队&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的网站项目。 代码可以查看项目链接获取⬇️&#xff0c;记得注明来意哦~&#x1f339; 赠送计算机毕业设计600个选题ex…

嵌入式学习(17)-stm32F407串口使用注意事项

一、概述 配置串口时串口的接收一直不好使&#xff0c;对比例程发现了问题&#xff1a; 在网上也找了一些资料供参考“STM32F4的串口RX引脚不能被设置为输入是因为串口的接收&#xff08;RX&#xff09;功能是由硬件电路实现的&#xff0c;无法通过软件配置来控制。串口接收功…

如何在UI自动化测试中创建稳定的定位器?

如何在UI自动化测试中创建稳定的定位器&#xff1f; 前言1. 避免使用绝对路径2. 避免在定位器中使用索引3. 避免多个类名的定位器4. 避免动态和自动生成的ID5. 确保定位器唯一6. 处理隐藏元素的策略7. 谨慎使用基于文本的定位器8. 使用AI创建稳定的定位器 总结 前言 在自动化测…

在做题中学习(77):快排

解法&#xff1a;快排 思路&#xff1a; 1.快排排一趟&#xff0c;递归分出来的左区间和右区间&#xff08;一趟的思想&#xff0c;看我的前一个文章&#xff1a;颜色分类题解&#xff09; 2.递归&#xff1a;想清楚 函数头 和 返回条件怎么写 函数头&#xff1a;把递归想成…

数学拯救世界(二)——— 学艺

一、 然而&#xff0c;袁qy大臣又犯难了&#xff0c;他在想&#xff0c;如何把分数与国人知道的小数或者整数联系在一起呢&#xff1f;如果直接告诉国王分数是自己是造出来的&#xff0c;那么可能会导致国王发怒。 “可恶而又死板的暴君&#xff0c;不愿意接受任何新东西”&…

【RK3562J开发笔记】MCP2518FD外部CAN-FD控制器的调试方法

“SPI转CAN-FD”是嵌入式开发领域的常用方法&#xff0c;它极大地促进了不同通信接口之间的无缝连接&#xff0c;并显著降低了系统设计的复杂性。飞凌嵌入式依托瑞芯微RK3562J处理器打造的OK3562J-C开发板因为内置了SPI转CAN-FD驱动&#xff0c;从而原生支持这一功能。该开发板…

Next.js系统性教学:服务器操作与数据变更

更多有关Next.js教程&#xff0c;请查阅&#xff1a; 【目录】Next.js 独立开发系列教程-CSDN博客 目录 1. 什么是服务器操作和数据变更&#xff1f; 1.1 服务器操作 (Server Actions) 1.2 数据变更 (Mutations) 2. Next.js中的服务器操作与数据变更 2.1 引入&#xff1a…

Appium 安装问题汇总

好生气好生气&#xff0c;装了几天了&#xff0c; opencv4nodejs 和 mjpeg-consumer 就是装不了&#xff0c;气死我了不管了&#xff0c;等后面会装的时候再来完善&#xff0c;气死了气死了。 目录 前言 1、apkanalyzer.bat 2、opencv4nodejs 3、ffmpeg 4、mjpeg-consume…

MCU、ARM体系结构,单片机基础,单片机操作

计算机基础 计算机的组成 输入设备、输出设备、存储器、运算器、控制器 输入设备&#xff1a;将其他信号转换为计算机可以识别的信号&#xff08;电信号&#xff09;。输出设备&#xff1a;将电信号&#xff08;&#xff10;、&#xff11;&#xff09;转为人或其他设备能理解的…

ArrayList常见操作源码逐句剖析

目录 前言 正文 1.需要了解的一些字段属性 1.存储 ArrayList 元素的数组缓冲区。 2.集合的大小 3.默认集合容量大小 2.ArrayList对象创建 1.无参构造 2.有参构造1 3.有参构造2 3.添加元素add(E e)以及扩容机制 ​编辑 4.添加元素add&#xff08;int index,E element…

【Linux从青铜到王者】数据链路层(mac,arp)以及ip分片

局域网通信 通过之前的学习&#xff0c;我们了解了应用层&#xff0c;传输层&#xff0c;网络层的协议和作用&#xff0c;这里先做个总结 应用层——http&#xff0c;https协议&#xff0c;也可以自己定义一套&#xff0c;作用是进行数据的处理传输层——tcp&#xff0c;udp协…

Linux絮絮叨(三) Ubuntu桌面版添加中文拼音输入法

步骤很详细&#xff0c;直接上教程 一. 配置安装简体拼音输入法 #安装相应的平台支持包 sudo apt install ibus-gtk ibus-gtk3# 安装简体拼音输入法 sudo apt install ibus-pinyin安装完成如果下面的步骤找不到对应输入法可以重启一下&#xff0c;一般不需要 二. 添加简体拼音…

Springboot 2.7+解决跨域问题,到底是在SpringBoot中添加拦截器还是修改Nginx配置

文章目录 1摘要2 核心代码2.1 SpringBoot 全局跨域拦截器2.2 Nginx 配置跨域处理2.3 Nginx 和 SpringBoot 同时添加允许跨域处理会怎么样&#xff1f; 3 推荐参考资料 1摘要 跨域问题报错信息: Referrer Policy:strict-origin-when-cross-origin跨域问题是在前后端分离的情况…

Ubuntu Server 22.04.5 LTS重启后IP被重置问题

Ubuntu Server 22.04.5 LTS重启后IP被重置问题 最近在使用Ubuntu Server 22.04做项目开发测试时发现每次重启和关机后&#xff0c;所设置的静态IP地址都会回复到安装系统时所设置的ip Ubuntu Server 22.04 官网下载地址&#xff1a;Ubuntu官方下载地址 对虚拟机下安装Ubuntu感…

052-linux安装MySQL数据库-保姆级

linux安装MySQL数据库 1.mysql数据库安装1.1.安装环境1.2.安装部署 2.mysql数据库主备实现2.1.主备配置2.1.1.前置环境准备2.1.2.master数据库服务器配置2.1.3.slave数据库服务器配置 2.2.主备故障切换 3.mysql数据库主主实现 1.mysql数据库安装 1.1.安装环境 操作系统版本&a…

棋牌游戏项目ctrl + c无法退出进程问题

棋牌游戏项目ctrl c无法退出进程问题 运行的服务为 user , 启动命令为 cd user && go run main.go启动之前先加入调试语句 在 go func() { metric.Serve(...) } 打日志在 app.Run(...) 打日志 user/main.go var configFile flag.String("config", "…