Mysql中的常用函数

1、datediff(date1,date2)

date1减去date2,返回两个日期之间的天数。

sql 复制代码
SELECT DATEDIFF('2008-11-30','2008-11-29') AS DiffDate
-- 返回1
sql 复制代码
SELECT DATEDIFF('2008-11-29','2008-11-30') AS DiffDate
-- 返回-1

2、char_length(s)

返回字符串 s 的字符数

3、round(x,d)

四舍五入参数x

返回参数x的四舍五入的有d位小数的一个数字。默认d为0,如果不填d,结果将没有小数点或小数部分。

4、if(expr,v1,v2)

如果表达式 expr 成立,返回结果 v1;否则,返回结果 v2。

5、ifnull(expression, alternative_value)

IFNULL() 是 用于 替代 NULL ,它的作用是 检查一个表达式 expression是否为 NULL,如果是 NULL,则返回指定的替代值 alternative_value**;否则返回该表达式的值**。

6、avg(expression)

avg就是常用的聚合函数,expression可以是某个列,也可以是计算表达式(例如,某列与常数相乘)

1934. 确认率 - 力扣(LeetCode)

7、date_sub() 和 date_add()

DATE_SUB() 和 DATE_ADD() 是 MySQL 内置的日期函数,用于对日期进行加减运算。

sql 复制代码
-- 语法,计算过去
DATE_SUB(起始日期, INTERVAL 数值 时间单位)
sql 复制代码
--语法,计算未来
DATE_ADD(起始日期, INTERVAL 数值 时间单位)

8、now()和curdate()的区别

NOW() 和 CURDATE() 都是 MySQL 中的日期时间函数,但它们的返回值不同。

9、union和union all

UNION 用于合并多个 SELECT 查询的结果,去掉重复的行。

UNION ALL 用于合并多个 SELECT 查询的结果,并保留所有行(包括重复的行)。

使用 UNION 时,所有查询的列数和数据类型需要一致。

外部可以使用 ORDER BY 对 UNION 的结果集进行排序。

sql 复制代码
SELECT id, name FROM employees
UNION
SELECT id, name FROM contractors;

10、CASE

CASE 函数是 MySQL 中的一个 条件表达式,允许根据条件返回不同的值。它类似于其他编程语言中的 if-else 语句,可以用于 SELECT、UPDATE、DELETE 等 SQL 语句中。CASE 语句根据给定的条件判断,选择相应的结果值。

基本语法:

  1. 简单 CASE 表达式 :根据某个列的值进行匹配。

    sql 复制代码
    SELECT column_name,
           CASE column_name
               WHEN value1 THEN result1
               WHEN value2 THEN result2
               ELSE default_result
           END AS alias_name
    FROM table_name;
  2. 搜索 CASE 表达式 :根据多个条件进行判断。

    sql 复制代码
    SELECT column_name,
           CASE
               WHEN condition1 THEN result1
               WHEN condition2 THEN result2
               ELSE default_result
           END AS alias_name
    FROM table_name;

    11、窗口函数

【MySQL】窗口函数详解(概念+练习+实战)_mysql 窗口函数-CSDN博客

相关推荐
Goat恶霸詹姆斯1 小时前
mysql常用语句
数据库·mysql·oracle
大模型玩家七七1 小时前
梯度累积真的省显存吗?它换走的是什么成本
java·javascript·数据库·人工智能·深度学习
曾经的三心草1 小时前
redis-9-哨兵
数据库·redis·bootstrap
明哥说编程1 小时前
Dataverse自定义表查询优化:D365集成大数据量提速实战【索引配置】
数据库·查询优化·dataverse·dataverse自定义表·索引配置·d365集成·大数据量提速
xiaowu0801 小时前
C# 拆解 “显式接口实现 + 子类强类型扩展” 的设计思想
数据库·oracle
讯方洋哥2 小时前
HarmonyOS App开发——关系型数据库应用App开发
数据库·harmonyos
惊讶的猫2 小时前
Redis持久化介绍
数据库·redis·缓存
Apple_羊先森3 小时前
ORACLE数据库巡检SQL脚本--19、磁盘读次数最高的前5条SQL语句
数据库·sql·oracle
全栈前端老曹3 小时前
【MongoDB】Node.js 集成 —— Mongoose ORM、Schema 设计、Model 操作
前端·javascript·数据库·mongodb·node.js·nosql·全栈
神梦流3 小时前
ops-math 算子库的扩展能力:高精度与复数运算的硬件映射策略
服务器·数据库