文章目录

  • 1 概述
  • 2 示例
    • 2.1 获取日期时间各部分
    • 2.2 日期时间相加减
  • 3 扩展
    • 3.1 now() 和 sysdate() 区别
    • 3.2 格式转换
    • 3.3 世界协调时间 UTC

1 概述

#mermaid-svg-Sq7iR5kHgyrk0Ymx {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .error-icon{fill:#552222;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .marker{fill:#333333;stroke:#333333;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .marker.cross{stroke:#333333;}#mermaid-svg-Sq7iR5kHgyrk0Ymx svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .cluster-label text{fill:#333;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .cluster-label span{color:#333;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .label text,#mermaid-svg-Sq7iR5kHgyrk0Ymx span{fill:#333;color:#333;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .node rect,#mermaid-svg-Sq7iR5kHgyrk0Ymx .node circle,#mermaid-svg-Sq7iR5kHgyrk0Ymx .node ellipse,#mermaid-svg-Sq7iR5kHgyrk0Ymx .node polygon,#mermaid-svg-Sq7iR5kHgyrk0Ymx .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .node .label{text-align:center;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .node.clickable{cursor:pointer;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .arrowheadPath{fill:#333333;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .cluster text{fill:#333;}#mermaid-svg-Sq7iR5kHgyrk0Ymx .cluster span{color:#333;}#mermaid-svg-Sq7iR5kHgyrk0Ymx div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-Sq7iR5kHgyrk0Ymx :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

日期时间函数
格式规范
年-月-日,%Y-%m-%d ..
时:分:秒,%H:%i:%S..
特别说明
一周中的第一天是 '周天'(而非 '周一')
select now(),     -- 日期函数 + 时间函数sysdate(), -- 日期函数 + 时间函数curdate(), -- 日期函数curtime(); -- 时间函数

2 示例

2.1 获取日期时间各部分

-- 标准日期参数如下:year、month、day ...
select now(),date(now()) 日期,time(now()) 时间,quarter(now()) 季度,week(now()) 周,year(now()) 年,month(now()) 月,day(now()) 日,hour(now()) 时,minute(now()) 分,second(now()) 秒,microsecond(now()) 微妙,dayofyear(now()) 一年中的第几天,dayofmonth(now()) 一个月中的第几天,dayofweek(now()) 一周中的第几天, -- 周天起算-- 函数很多,但类似,用的时候 敲代码,看提示 即可。last_day(now()) 一个月中的最后一天
;

2.2 日期时间相加减

1. '单个' 日期时间相加减(1) date_add(date, interval int 日期参数):'+'(2) date_sub(date, interval int 日期参数):'-' 2. '两个' 日期时间相加减(1) datediff(expr1, expr2)   : 日期差,天数 = expr1 - expr2(2) timediff(expr1, expr2)   : 时间差,时分秒 = expr1 - expr2(3) timestampdiff(日期参数, 日期1, 日期2): 请注意 = 日期2 - 日期1

单个日期时间相加减:date_add() +、date_sub() -

select now(),date_add(now(), interval 1 year) 明年,date_add(now(), interval 1 day) 明天,date_add(now(), interval 1 hour) 一小时后,-- 复杂的,敲的时候,看代码提示即可date_add(now(), interval '01:15' hour_minute) 一小时十五分钟后,date_add(now(), interval '01:15:30' hour_second) 一小时十五分三十秒后,date_add(now(), interval '1 01:15:30' day_second) 一天一小时十五分三十秒后,date_sub(now(), interval 1 year) 前年 -- 格式同上from dual;

两个日期时间相加减:

select datediff('2021-01-02', '2021-01-01') date_diff,  -- 1timediff('10:20:30', '08:10:15') time_diff,       -- 02:10:15-- 支持标准日期参数timestampdiff(day, '2021-01-01', '2021-01-02') timestamp_diff,timestampdiff(minute, '2021-01-01 08:10:15', '2021-01-02 10:20:30')  timestamp_diff2from dual;

3 扩展

3.1 now() 和 sysdate() 区别

相同点:都是 日期 + 时间 格式
不同点:(1) now()     在 '执行开始时' 值就得到了(2) sysdate() 在函数执行时 '动态获取'

示例1:now() = ‘执行开始时’ 值就得到了

select now(), sleep(3), now();
-- 值一致
2021-01-18 17:07:22     0   2021-01-18 17:07:22

示例2:sysdate() = ‘执行函数时’ 才得到值

select sysdate(), sleep(3), sysdate();
-- 值不同
2021-01-18 17:08:40     0   2021-01-18 17:08:43

3.2 格式转换

  • Mysql 数据类型转换详解 (convert、cast)

3.3 世界协调时间 UTC

1. 世界协调时间 UTC:   Universal Time Coordinated2. 我国位于 '东八时区',所以本地时间 = UTC 时间 + 8 小时(1) UTC 时间在业务涉及多个国家和地区的时候,非常有用

示例: now() = utc_timestamp() + 8h

select now(),                           -- 2021-06-16 10:39:51utc_date() 'utc_date',           -- 2021-06-16utc_time() 'utc_time',           -- 02:39:51utc_timestamp() 'utc_timestamp'  -- 2021-06-16 02:39:51from dual;

Mysql 日期函数详解(now、date_add、datediff )相关推荐

  1. mysql日期教程_MySQL日期函数详解

    Mysql作为一款开元的免费关系型数据库,用户基础非常庞大,本文列出了MYSQL常用日期函数与日期转换格式化函数,希望能帮助到大家. 1.DAYOFWEEK(date) SELECT DAYOFWEE ...

  2. Mysql日期转化详解

    Mysql 日期和时间函数 • CURDATE()和CURRENT_DATE() :获取当前日期函数; • NOW():返回服务器的当前日期和时间: • CURTIME():返回当前时间,只包含时分秒 ...

  3. mysql时间函数详解

    1. 从时间中解析出年月日时间:date_format() 函数解析:date_format() 有两个参数,一个是date, 另一个是format:原理是将时间(date),转化成我们想要的格式(f ...

  4. mysql自定义函数详解

    1. 函数简介 mysql 5.0开始支持函数,函数是存在数据库中的一段sql集合,调用函数可以减少很多工作量, 减少数据在数据库和应用服务器上的传输,对于提高数据处理的效率.参数类型为in类型,函数 ...

  5. mysql capi函数详解_CAPI函数描述(A-F)

    25.2.3.1. mysql_affected_rows() my_ulonglong mysql_affected_rows(MYSQL *mysql) 描述 返回上次UPDATE更改的行数,上次 ...

  6. MySQL日期类型详解

    [1]MySQL中的日期时间类型 MySQL中常用的几种时间类型有:date.datetime.time.year.timestamp 数据类型 占用字节 最小值 最大值 零值表示 date 4 10 ...

  7. MYSQL开窗函数详解

    基本概念 MYSQL8.0支持窗口函数(Window Function),也称分析函数.窗口函数与组分聚合函数类似,但是每一行数据都会生成一个结果.如果我们将mysql与pandas中的DataFra ...

  8. SQL Server日期函数详解与实战

    阅读目录 获取时间函数 getdate()函数 SYSDATETIME()函数 格式化函数 CONVERT()函数 FORMAT()函数 日期的拆分 YEAR(date),MONTH(date),DA ...

  9. mysql capi函数详解_技术分享|MySQLCAPI参数MYSQL_OPT_READ_TIMEOUT的一些行为分析

    作者:戴岳兵 MYSQL_OPT_READ_TIMEOUT 是 MySQL c api 客户端中用来设置读取超时时间的参数.在 MySQL 的官方文档中,该参数的描述是这样的: MYSQL_OPT_R ...

  10. mysql capi函数详解_CAPI函数描述(G-N)

    25.2.3.26. mysql_get_character_set_info() void mysql_get_character_set_info(MYSQL *mysql, MY_CHARSET ...

最新文章

  1. quartusii开发过程中路径不能出现空格或中文
  2. js实现给html固定区域增加水印
  3. Linux下使用Nexus搭建Maven私服
  4. C/C++高级算法之绘制曼德布洛特集
  5. 如何使用War包部署Tomcat
  6. ubuntu清空回收站
  7. stream 多个字段分组_Python Pandas对Excel数据的分组聚合和数据透视
  8. C#注册Email发送验证码详解
  9. 德育知识元素挖掘系统设计 软件工程 spring boot + Vue.js + python机器学习
  10. 日语IT词汇及相关业务词汇
  11. 劳动仲裁解除劳动关系要多长时间
  12. Hack The Box - Meta 利用Exiftool远程代码执行漏洞获取webshell,ImageMagrick命令执行漏洞横向提权,更改环境配置SUDO纵向提权
  13. 计算机网络原理-应用层
  14. 数据库(笔记)——三个世界与数据模型
  15. 论文解读:《一种利用二核苷酸One-hot编码器识别水稻基因组中N6甲基腺嘌呤位点的卷积神经网络》
  16. STM32 HAL库 CUBEMX FPU 和 DSP库
  17. 跳出软硬件思维,大屏角逐折射生活态度
  18. ubuntu安装截图工具 flameshot(对标windows下snipaste)
  19. R语言可视化——REmap动态地图
  20. python实现语音控制

热门文章

  1. Spring Cloud Netflix Eureka Server 搭建服务注册中心
  2. CRM客户管理系统-SSM框架项目实战教程
  3. 笔记本计算机摄像头怎么打开,手把手教你笔记本内置摄像头打不开解决方法
  4. java绘制图形_java怎么绘制简单图形
  5. 消除input标签的自动填充 白色背景,及更改字体颜色
  6. 指针概念、指针大小和内存详解
  7. ros + gazebo未报错却加载不出来机器人模型 解决办法
  8. win10任务栏假死问题
  9. C语言中的频率函数,请计算下列C语言程式片断或函数的频率计数和时间复杂度,如下所示 .DOC...
  10. TOEFL wordlist 17