MySQL -- 基本函数

ops/2025/3/17 21:52:21/

本文主要介绍一些基本的数据库函数

1、日期函数

下面是一些常用时间函数的相关信息:
函数名称描述
current_date()当前日期
current_time()当前时间
current_timestamp()当前时间戳
date(datetime)返回datetime参数的日期部分
date_add(date, interval d_value_type)在date中添加日期或时间interval后的数值,单位可以是:year、minute、second、day
date_sub(date, interval d_value_type)在date中减去日期或时间interval后的数值,单位可以是:year、minute、second、day
datediff(date1, date2)两个日期的差,单位是天
now()当前日期时间

2、字符串函数

以下是将您提供的内容转换为表格的形式,并补充了一些常见的字符串函数:
函数名描述
charset(str)返回字符串 str 的字符集。
concat(string1, string2, ...)连接两个或多个字符串。
instr(string, substring)返回 substringstring 中首次出现的位置,如果没有找到则返回 0。
ucase(string)将字符串 string 转换为大写。
lcase(string)将字符串 string 转换为小写。
left(string, length)从字符串 string 的左边开始取 length 个字符。
length(string)返回字符串 string 的长度。
replace(str, search_str, replace_str)在字符串 str 中用 replace_str 替换所有的 search_str
strcmp(string1, string2)逐字符比较两个字符串 string1string2 的大小。
substring(str, position [, length])从字符串 strposition 位置开始,取 length 个字符。
ltrim(string)去除字符串 string 的前导空格。
rtrim(string)去除字符串 string 的尾部空格。
trim(string)去除字符串 string 的前导和尾部空格。
reverse(string)返回字符串 string 的反转形式。
locate(substring, string [, start])返回 substringstring 中首次出现的位置,从 start 位置开始搜索。
repeat(string, count)返回字符串 string 重复 count 次的结果。
space(count)返回由 count 个空格组成的字符串。
mid(string, start, length)从字符串 stringstart 位置开始,取 length 个字符。

3、数学函数

函数名称描述备注
abs(number)返回 number 的绝对值。例如,abs(-5) 返回 5
bin(decimal_number)将十进制数 decimal_number 转换为二进制字符串。例如,bin(10) 返回 '1010'
hex(decimalNumber)将十进制数 decimalNumber 转换为十六进制字符串。例如,hex(255) 返回 'FF'
conv(number, from_base, to_base)numberfrom_base 进制转换为 to_base 进制。例如,conv('A', 16, 10) 返回 10
ceiling(number)返回大于或等于 number 的最小整数(向上取整)。例如,ceiling(3.2) 返回 4
floor(number)返回小于或等于 number 的最大整数(向下取整)。例如,floor(3.8) 返回 3
format(number, decimal_places)number 格式化为指定小数位数的字符串。例如,format(123.4567, 2) 返回 '123.46'
rand()返回一个随机浮点数,范围在 [0.0, 1.0) 之间。例如,rand() 可能返回 0.123456
mod(number, denominator)返回 number 除以 denominator 的余数。例如,mod(10, 3) 返回 1
round(number, decimal_places)number 四舍五入到指定的小数位数。例如,round(3.14159, 2) 返回 3.14
sqrt(number)返回 number 的平方根。例如,sqrt(16) 返回 4
power(base, exponent)返回 baseexponent 次幂。例如,power(2, 3) 返回 8
log(number)返回 number 的自然对数(以 e 为底)。例如,log(10) 返回 2.302585
log10(number)返回 number 的常用对数(以 10 为底)。例如,log10(100) 返回 2
exp(number)返回 enumber 次幂。例如,exp(1) 返回 2.718282

特别说明一下这里的向上和向下取整函数

  • 向上取整 (ceiling)

    • 返回大于或等于给定数的最小整数。
    • 例如:
      • ceiling(3.2) 返回 4
      • ceiling(-1.7) 返回 -1
  • 向下取整 (floor)

    • 返回小于或等于给定数的最大整数。
    • 例如:
      • floor(3.8) 返回 3
      • floor(-1.7) 返回 -2

4、其他类型函数

4.1聚合函数

函数名称描述示例
count(expression)返回行数。count(*) 返回表中的总行数。
sum(expression)返回表达式的总和。sum(salary) 返回 salary 列的总和。
avg(expression)返回表达式的平均值。avg(salary) 返回 salary 列的平均值。
min(expression)返回表达式的最小值。min(salary) 返回 salary 列的最小值。
max(expression)返回表达式的最大值。max(salary) 返回 salary 列的最大值。
group_concat(expression)将分组中的值连接成一个字符串。group_concat(name) 返回所有 name 值的逗号分隔列表。

4.2条件函数

函数名称描述示例
if(condition, value_if_true, value_if_false)如果条件为真,返回 value_if_true,否则返回 value_if_falseif(1 > 0, 'Yes', 'No') 返回 'Yes'
ifnull(expression, value)如果 expressionNULL,返回 value,否则返回 expressionifnull(NULL, 'Unknown') 返回 'Unknown'
coalesce(value1, value2, ...)返回参数列表中的第一个非 NULL 值。coalesce(NULL, NULL, 'Hello') 返回 'Hello'
case when condition then result [else else_result] end多条件判断,类似于 if-else 语句。case when score >= 90 then 'A' else 'B' end 根据 score 返回等级。

4.3类型转换函数

函数名称描述示例
cast(expression AS type)将表达式转换为指定类型。cast('123' AS SIGNED) 返回 123
convert(expression, type)将表达式转换为指定类型。convert('123', SIGNED) 返回 123
str_to_date(str, format)将字符串转换为日期。str_to_date('2023-10-05', '%Y-%m-%d') 返回 2023-10-05
date_format(date, format)将日期格式化为指定格式的字符串。date_format('2023-10-05', '%Y/%m/%d') 返回 '2023/10/05'

4.4其他类型函数

函数名称描述示例
version()返回 MySQL 服务器的版本。version() 返回 '8.0.26'
database()返回当前数据库名称。database() 返回 'mydb'
user()返回当前用户和主机名。user() 返回 'root@localhost'
last_insert_id()返回最后插入的 AUTO_INCREMENT 值。last_insert_id() 返回 10(如果最后插入的 ID 是 10)。


http://www.ppmy.cn/ops/166626.html

相关文章

yarn安装及配置,cmd可以查看yarn版本号但是vscode无法查看且运行问题

以下问题: yarn : The term yarn is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. At line:1 char:1 y…

基于Python的天气预报数据可视化分析系统-Flask+html

开发语言:Python框架:flaskPython版本:python3.8数据库:mysql 5.7数据库工具:Navicat11开发软件:PyCharm 系统展示 系统登录 可视化界面 天气地图 天气分析 历史天气 用户管理 摘要 本文介绍了基于大数据…

Ubuntu 访问 Windows 共享文件夹

Ubuntu 访问 Windows 共享文件夹 前言 使用Ubuntu主系统并使用Windows虚拟机 SMB 协议 在 Linux 系统中,Samba 是一款开源软件,它实现了 SMB/CIFS 协议,允许 Linux 服务器与 Windows 或其他支持 SMB 协议的系统进行文件和打印机共享。通过…

数字化转型 - 数据驱动

数字化转型 一、 数据驱动1.1 监控1.2 分析1.3 挖掘1.4 赋能 二、数据驱动案例2.1 能源工业互联网:绿色节能的数字化路径2.2 光伏产业的数字化升级2.3 数据中心的绿色转型2.4云迁移的质效优化2.5 企业数字化运营的实践2.6数字化转型的最佳实践 一、 数据驱动 从数…

Java中的消息中间件对比与解析:RocketMQ vs RabbitMQ

消息中间件(Message Queue, MQ)是分布式系统中实现异步通信、解耦服务和流量削峰的关键组件。在Java生态中,RocketMQ和RabbitMQ是两个广泛应用的消息队列系统,但它们在设计理念、功能特性和适用场景上存在显著差异。本文将从核心功…

【数学建模】层次分析法(AHP)详解及其应用

层次分析法(AHP)详解及其应用 引言 在现实生活和工作中,我们经常面临复杂的决策问题,这些问题通常涉及多个评价准则,且各准则之间可能存在相互影响。如何在这些复杂因素中做出合理的决策?层次分析法(Analytic Hierarchy Process…

工程化与框架系列(34)--前端重构技巧指南

前端重构技巧指南 🔄 引言 前端重构是提高代码质量和可维护性的重要手段。本文将深入探讨前端重构的各种技巧,包括代码分析、重构策略、测试保障等方面,帮助开发者更好地进行代码重构。 重构概述 前端重构主要包括以下方面: …

[项目]基于FreeRTOS的STM32四轴飞行器: 二.项目搭建及移植FreeRTOS

基于FreeRTOS的STM32四轴飞行器: 二.项目搭建及debug模块 一.项目搭建二.移植FreeRTOS 一.项目搭建 先配置SYS系统滴答定时器来源为默认,因为其他定时器用来驱动电机了只能与FreeRTOS共用: 之后选择RCC配置芯片的时钟来源: 配置时钟树&am…