MySQL DAYOFYEAR() 函数使用指南

MySQL DAYOFYEAR() 函数返回一个从 1366 代表给定日期是一年中的第几天的数字。

DAYOFYEAR() 语法

这是 MySQL DAYOFYEAR() 函数的语法:

DAYOFYEAR(expr)

参数

expr
必需的。一个日期或者日期时间表达式。

返回值

MySQL DAYOFYEAR() 函数返回一个从 1366 代表给定日期是一年中的第几天的数字。

  • 如果指定的表达式不是一个合法的日期或者日期时间,DAYOFYEAR() 函数将返回 NULL
  • 如果参数为 NULLDAYOFYEAR() 函数将返回 NULL

DAYOFYEAR() 示例

这里是几个 DAYOFYEAR() 函数的示例。

SELECT
    DAYOFYEAR('2022-01-01'),
    DAYOFYEAR('2022-01-31'),
    DAYOFYEAR('2022-02-28 10:10:10'),
    DAYOFYEAR('2022-02-00'),
    DAYOFYEAR('2022-02-30'),
    DAYOFYEAR('Not A DATE'),
    DAYOFYEAR(NULL)\G
         DAYOFYEAR('2022-01-01'): 1
         DAYOFYEAR('2022-01-31'): 31
DAYOFYEAR('2022-02-28 10:10:10'): 59
         DAYOFYEAR('2022-02-00'): NULL
         DAYOFYEAR('2022-02-30'): NULL
         DAYOFYEAR('Not A DATE'): NULL
                 DAYOFYEAR(NULL): NULL

如果要返回今天是一年中第几天,请使用 NOW(), CURDATE(), CURRENT_DATE(), 或 SYSDATE() 中的任意一个。比如:

SELECT
    DAYOFYEAR(NOW()),
    DAYOFYEAR(CURDATE()),
    DAYOFYEAR(CURRENT_DATE()),
    DAYOFYEAR(SYSDATE())\G
         DAYOFYEAR(NOW()): 103
     DAYOFYEAR(CURDATE()): 103
DAYOFYEAR(CURRENT_DATE()): 103
     DAYOFYEAR(SYSDATE()): 103

注意,您的结果可能不同。