SQL中的时间函数

文章目录

    • 用不同的格式显示日期/时间
    • 截取时间
    • 时间差

NOW() # 返回当前的日期和时间

CURDATE()  # 返回当前的日期

CURTIME()  # 返回当前的时间


DATE(date) #提取日期或日期/时间表达式的日期部分,date参数是合法的日期表达式。
## DATE('2008-11-11 13:23:44.657') 
## 2008-11-11   

DAY() #返回一个整数值,表示指定日期的月份中的第几天
## DAY('2008-11-11 13:23:44.657')
## 11

用不同的格式显示日期/时间

格式 描述
%Y 年,4位
%y 年,2位
%M 月名
%m 月,数值(00-12)
%D 带有英文前缀的月中的天
%d 月的天,数值(00-31)
%H:%i:%s 00:00:00

截取时间

  1. 一个月的最后一天
    LAST_day() 返回该月的最后一天对应的日期
  2. 一周中的第几天
    DAYOFWEEK(date) 1表示周日

时间差

  1. 给日期添加或减去指定间隔
DATE_ADD()   # 给日期添加指定的时间间隔

DATE_SUB()   # 给日期减去指定的时间间隔

DATE_SUB(date,INTERVAL expr type)

# type可以是minute hour day week month year等等

  1. 求两个时间之间的差
    日期之间的差
DATEDIFF(date1, date2)# 前-后
#得到的结果是date1与date2相差的天数。
#如果date1比date2大,结果为正;如果date1比date2小,结果为负。

后-前

TIMESTAMPDIFF(时间类型, date1, date2)
# 后-前
#这个函数和上面diffdate的正、负号规则刚好相反。
#日期1大于日期2,结果为负,日期1小于日期2,结果为正。

你可能感兴趣的:(数据库,sql,数据库)