内容简介

datetime类型和timestamp类型的取值范围,CURRENT_DATE()函数应用,NOW()函数应用,DATE_FROMAT()函数取星期,日期、字符串、时间戳相互转换等。

时间范围

datetime类型范围:1000-01-01 00:00:00 ~ 9999-12-31 23:59:59

timestamp类型范围:1970-01-01 08:00:01 ~ 2038-01-19 11:14:07

CURRENT_DATE()函数

#获取当前日期
SELECT CURRENT_DATE() AS newDate; #2019-05-20
#当前日期加1天(其他天数方法一样)
SELECT DATE_ADD(CURRENT_DATE(), INTERVAL 1 DAY) AS newDate; #2019-05-21
#当前日期减1天
SELECT DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY) AS newDate; #2019-05-19
#当前日期加1个月
SELECT DATE_ADD(CURRENT_DATE(), INTERVAL 1 MONTH) AS newDate; #2019-06-20
#当前日期减1个月
SELECT DATE_ADD(CURRENT_DATE(), INTERVAL -1 MONTH) AS newDate; #2019-04-20
#当前日期加1年
SELECT DATE_ADD(CURRENT_DATE(), INTERVAL 1 YEAR) AS newDate; #2020-05-20
#当前日期减1年
SELECT DATE_ADD(CURRENT_DATE(), INTERVAL -1 YEAR) AS newDate; #2018-05-20 #指定日期加1天(可将DAY换为MONTH,YEAR来实现加1个月,1年)
SELECT DATE_ADD('2019-05-02', INTERVAL 1 DAY) AS newDate; #2019-05-03
#指定日期减1天(可将DAY换为MONTH,YEAR来实现减1个月,1年)
SELECT DATE_ADD('2019-05-02', INTERVAL -1 DAY) AS newDate; #2019-05-01 #当前时间添加1小时10分钟10秒钟
SELECT DATE_ADD(NOW(), INTERVAL '1:10:10' HOUR_SECOND) AS newTime; #2019-05-20 15:59:32
#指定时间添加1小时10分钟10秒钟
SELECT DATE_ADD('2019-04-17 2:00:00', INTERVAL '1:10:10' HOUR_SECOND) AS newTime; #2019-04-17 03:10:10

NOW()函数

#获取当前时间
SELECT NOW() AS newTime; #2019-05-20 14:28:41
#当前时间减30秒
SELECT (NOW() - INTERVAL 30 SECOND) AS newTime; #2019-05-20 14:29:31
#当前时间加30秒
SELECT (NOW() + INTERVAL 30 SECOND) AS newTime; #2019-05-20 14:29:31
#当前时间减30分钟
SELECT (NOW() - INTERVAL 30 MINUTE) AS newTime; #2019-05-20 14:02:26
#当前时间加30分钟
SELECT (NOW() + INTERVAL 30 MINUTE) AS newTime; #2019-05-20 15:02:41
#当前时间减1天
SELECT (NOW() - INTERVAL 1 DAY) AS newTime; #2019-05-19 14:33:26
#当前时间加1天
SELECT (NOW() + INTERVAL 1 DAY) AS newTime; #2019-05-21 14:33:33
#当前时间减1个月
SELECT (NOW() - INTERVAL 1 MONTH) AS newTime; #2019-04-20 14:34:10
#当前时间加1个月
SELECT (NOW() + INTERVAL 1 MONTH) AS newTime; #2019-06-20 14:34:47
#当前时间减1年
SELECT (NOW() - INTERVAL 1 YEAR) AS newTime; #2018-05-20 14:35:09
#当前时间加1年
SELECT (NOW() + INTERVAL 1 MONTH) AS newTime; #2019-06-20 14:35:23 #指定时间的加减,将上面的NOW()函数换为指定日期时间即可,以加30分钟为例,如下:
SELECT ('2019-01-02 12:30:00' + INTERVAL 30 MINUTE) AS newTime; #2019-01-02 13:00:00

日期取星期几

# 1:星期一 2:星期二 3:星期三 4:星期四 5:星期五 6:星期六 0:星期日
SELECT DATE_FORMAT('2019-05-20','%w') AS weekDay FROM DUAL; #1 # 2:星期一 3:星期二 4:星期三 5:星期四 6:星期五 7:星期六 1:星期日
SELECT DAYOFWEEK('2019-05-20') AS weekDay; #2 # 0:星期一 1:星期二 2:星期三 3:星期四 4:星期五 5:星期六 6:星期日
SELECT WEEKDAY('2019-05-20') AS weekDay; #0 #可将具体日期换为CURRENT_DATE()函数取当前日期,如下:
SELECT DATE_FORMAT(CURRENT_DATE(),'%w') AS weekDay FROM DUAL;
SELECT DAYOFWEEK(CURRENT_DATE()) AS weekDay;
SELECT WEEKDAY(CURRENT_DATE()) AS weekDay;

类型转换

日期、字符串、时间戳互转转换请参考:MYSQL日期 字符串 时间戳互转

MySQL的CURRENT_DATE(),NOW(),DATE_FORMAT()函数的应用,类型转换及操作汇总的更多相关文章

  1. 【杂记】mysql 左右连接查询中的NULL的数据筛选问题,查询NULL设置默认值,DATE_FORMAT函数

    MySQL左右连接查询中的NULL的数据筛选问题 xpression 为 Null,则 IsNull 将返回 True:否则 IsNull 将返回 False. 如果 expression 由多个变量 ...

  2. MySQL DATE_FORMAT() 函数

    定义和用法 DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据. 语法 DATE_FORMAT(date,format) date 参数是合法的日期.format 规定日期/时间的输出 ...

  3. MySQL DATE_FORMAT函数使用

    DATE_FORMAT函数 一.定义和用法 DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据. 二.语法 DATE_FORMAT(date,format)date 参数是合法的日期. ...

  4. [转]MySQL DATE_FORMAT() 函数

    原文地址:http://www.w3school.com.cn/sql/func_date_format.asp 定义和用法 DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据. 语法 ...

  5. MYSQL DATE_FORMAT() 函数时间大小比较

    DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据. DATE_FORMAT(date,format) 可以使用的格式有: 格式 描述 %a 缩写星期名 %b 缩写月名 %c 月,数值 ...

  6. MySQL 获得当前日期时间\时间戳 函数 ( 转自传智播客)

    MySQL 获得当前日期时间 函数 1.1 获得当前日期+时间(date + time)函数:now() mysql> select now(); +-------+ | now() | +-- ...

  7. Mysql 中有关日期的函数(sql)

    DAYOFWEEK(date)返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六).这些索引值对应于ODBC标准.mysql> select DAYOFWEEK('1998-0 ...

  8. 转MYSQL学习(三) 函数

    这一节主要介绍MYSQL里的函数,MYSQL里的函数很多,我这里主要介绍MYSQL里有而SQLSERVER没有的函数 数学函数 1.求余函数MOD(X,Y) MOD(X,Y)返回x被y除后的余数,MO ...

  9. mysql 中时间和日期函数应用

    一.MySQL 获得当前日期时间 函数 1.1 获得当前日期+时间(date + time)函数:now() mysql> select now(); +-------------------- ...

随机推荐

  1. 分享知识-快乐自己:PageHelper 分页关键基础代码

    关键代码:点我下载样式   详细介绍 //使用分页插件 jQuery("#pagination").pagination(data.total, { items_per_page: ...

  2. qt和makefile学习网址

    http://blog.51cto.com/zt/20/1/   ---qt学习网站 http://www.chinaunix.net/old_jh/23/408225.html  [精华] 跟我一起 ...

  3. python 链接MS SQL

    cnxn = pyodbc.connect(driver='{SQL Server}', host=server, database=db1, trusted_connection=tcon, use ...

  4. 用React写一个工大导航

    Online: https://brenner8023.github.io/gdut-nav/ GitHub地址: https://github.com/brenner8023/gdut-nav 笔者 ...

  5. codeforces 710C C. Magic Odd Square(构造)

    题目链接: C. Magic Odd Square Find an n × n matrix with different numbers from 1 to n2, so the sum in ea ...

  6. Java 集合常用特点

    1:集合:1) Collection(单列集合) ---------------------------------------------------------------------       ...

  7. 记一次编译tensorflow-gpu爬过的坑

    废话不多说,先说最终成功的版本:系统=>centos7 ,cuda=>10.0 ,cudnn=>7.5 ,nccl=>源码编译, tensorflow=>最新版本源码编译 ...

  8. Sentry的要点

    1.Apache的Build 在研究Sentry的时候,发现没有bin.jar,只能手工编辑工程,但是编辑发现很多jar包有问题:在访问官网的时候发现左侧菜单中有一项是builds,点开后(https ...

  9. ssh免密码登录配置方法,(图示加命令)

    首先,说明一下我们要做的是,serverA 服务器的 usera 用户免密码登录 serverB 服务器的 userb用户. 我们先使用usera 登录 serverA 服务器 [root@serve ...

  10. DSP/BIOS程序启动顺序

    基于TI的DSP芯片的应用程序分为两种:一般应用程序:DSP/BIOS应用程序. 为简化编程,TI提供了一套C的编程接口,它以API和宏的形式封装了TI的所有硬件模块,这套接口统称DSP/BIOS.D ...