MySQL 中 now() 和 current_date() 有什么区别?(超详细)

更新时间 2023-04-07 10:49:11

在 MySQL 中,NOW()CURRENT_DATE() 函数都是用于获取当前日期和时间的函数,但是它们之间存在一些区别。

NOW() 函数

NOW() 函数返回当前日期和时间,其格式为 "YYYY-MM-DD HH:MM:SS",其中 YYYY 表示年份,MM 表示月份,DD 表示日期,HH 表示小时,MM 表示分钟,SS 表示秒。

示例代码:

SELECT NOW();

输出结果:

2023-03-31 01:23:45

CURRENT_DATE() 函数

CURRENT_DATE() 函数返回当前日期,其格式为 "YYYY-MM-DD",其中 YYYY 表示年份,MM 表示月份,DD 表示日期。

示例代码:

SELECT CURRENT_DATE();

输出结果:

2023-03-31

区别

  1. 返回值类型不同:NOW() 返回日期和时间,CURRENT_DATE() 仅返回日期。
  2. 函数名不同,语义不同:NOW() 表示现在的日期和时间,CURRENT_DATE() 表示现在的日期。
  3. NOW() 的返回值包含小时、分钟和秒数,而 CURRENT_DATE() 只包含日期。

因此,根据需要选择使用合适的函数。如果需要日期和时间,则使用 NOW() 函数;如果只需要日期,则使用 CURRENT_DATE() 函数。