MySQL 函数总结
发布日期:2021-05-18 05:29:32 浏览次数:17 分类:精选文章

本文共 1021 字,大约阅读时间需要 3 分钟。

DATE_SUB() 函数

定义

DATE_SUB() 函数用于将指定日期减去一个时间间隔。

语法

DATE_SUB(date, INTERVAL expr type)
  • date:指定的日期。
  • expr:表示时间间隔,可为常数或列。
  • type:可以是以下值之一:
    • 'SECOND'
    • 'MINUTE'
    • 'HOUR'
    • 'DAY'
    • 'WEEK'
    • 'MONTH'
    • 'YEAR'

参数说明

  • date:必须为合法的日期表达式。
  • expr:指定减去的时间间隔。
  • type:指定时间单位。

示例

DATE_SUB('2023-10-15 14:30:10', '3 MINUTE', 'MINUTE') -- 返回 '2023-10-15 14:27:10'
IFNULL(DATE_SUB('2023-10-15', '30 DAY', 'DAY'), '0000-00-00') -- 返回 '2023-09-15' 当 date_sub 返回NULL 时

MySQL IFNULL() 函数

定义

IFNULL() 函数用于判断第一个表达式是否为 NULL。如果expr1为 NULL,则返回expr2的值,否则返回expr1

描述

IFNULL() 函数在 SQL 中用于处理 NULL 值。它非常有用,特别是在更新或插入数据时,可以确保字段不会因为 NULL 导致错误。

用法

单参数形式

IFNULL(expr1, '替代值')
  • 如果 expr1 为 NULL,则返回 '替代值'。
  • 否则,返回 expr1

多参数形式

IF(expr1, expr2, expr3)
  • 如果 expr1 不为 NULL,则返回 expr2
  • 如果 expr1 为 NULL,则返回 expr3

示例

SELECT IFNULL(qyxx.cshzt, '0') AS cshzt FROM qyxx;
IF (qyxx.cshzt IS NOT NULL, qyxx.cshzt, '0') AS cshzt

扩展

IFNULL 函数除了处理单个 NULL 值,还可以扩展为复合条件判断。例如:

IF(expr1, expr2, expr3)
  • 如果 expr1 不为 NULL,则 IF 函数返回 expr2
  • 如果 expr1 为 NULL,则返回 expr3
  • 如果第二个表达式结果也为 NULL(在支持这种方式的数据库中),则可能进一步返回第三个字段。
上一篇:idea sql自动补全、自动提示设置
下一篇:sona编码规范

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2025年05月02日 14时22分57秒