一、获取当前日期时间

  1.1、获得当前日期+时间(date+time)函数:now()

  1.2、获取当前日期+时间(date+time)函数:sysdate()

  注:二者类拟,不同在于now()在执行时就得到了,sysdate()执行时动态得到。

  2、获取当前日期:curdate(),与current_date()等同

  3、获得当前时间:curtime(),与current_time()等同

  4、获取当前UTC日期时间:utc_date()、utc_time()、utc_timestamp()。标准0时区时间

二、日期时间Extract(选取)

  1、选取时间时间的各个部分:日期、时间、年、季度、月、日、小时、分钟、秒、微秒

    set @dt='2017-10-11 14:20:31.2341'

    日期:date(@dt)

    时间:time(@dt)

    年份:year(@dt)

    季份:quarter(@dt)

    月份:month(@dt)

    天份:day(@dt)

    小时:hour(@dt)

    分钟:minute(@dt)

    秒钟:second(@dt)

    毫秒:microsecond(@dt)

  2、Extract(),可以实现类拟的功能。略

  3、dayof函数:dayofweek()、dayofmonth()、dayofyear()  

    分别返回日期参数在一周、一月、一年中的位置

    set @dt='2017-10-11'

    dayofweek(@dt)、dayofmonth(@dt)、dayofyear(@dt)

  4、week函数:week()、weekofyear()、dayofweek()、weekday()、yearweek()

    week()与weekofyear()类拟,都是计算‘某天’位于一年中的第几周

    weekday()与dayofweek()类拟,返回‘某天’在一周中的位置。参考点不同

  5、返回星期和月份:dayname(@dt)、monthname(@dt)

  6、last_day(@dt):返回月份中的最后一天

三、日期时间计算

  1、为日期增加一个时间间隔:date_add(@dt,interval (-)整数 单位)。单位:day、hour、minute等

    adddate()、addtime()可以用date_add()代替。建议总是用date_add()

  2、为日期减去一个时间间隔:date_sub()。与date_add()用法一致

  3、另类时间函数:period_add(P,N)、period_diff(P1、P2),很少用到

    period_add参数"P"的格式为“YYYYMMDD”或“YYYYMM”,第二个参数"N"表示增加或减去N 月。

    period_diff返回P1-P2个月

  4、日期、时间相减函数:datediff(date1、date2)、timediff(time、time2)

    datediff(date1,date2):返回date1-date2的天数

    timediff(time1,time2):返回time1-time2的差值(时间部分)

    注:timediff(time1,time2)参数类型必须相同

四、日期转换函数、时间转换函数

  1、(时间、秒)转换:time_to_sec(time),sec_to_time(seconds)

  2、(日期、天数)转换:to_days(date)、from_days(days)

  3、(字符串转换为日期):str_to_date(str,fromat)

    select str_to_date('08.09.2008', '%m.%d.%Y');

  4、(日期/时间)转为字符串:date_format(date,format)、time_format(time,format)

    date_format('2008-08-08 22:23:00', '%W %M %Y');

    time_format('22:23:01', '%H.%i.%s');

  5、获得国家地区时间格式函数:get_fomat()。很少用到

  6、拼凑时间、时间:makedate(year,dayofyear)、maketime(hour,minute,second)

    makedate(2001,32);   -- '2001-02-01'

    maketime(12,15,30);  -- '12:15:30'

五、时间戳(timestamp)

  1、获取当前时间戳:current_timestamp、current_timestamp()

  2、(unix时间戳、日期)转换

    unix_timestamp(),unix_timestamp();                       -- 1218290027

    unix_timestamp(date),unix_timestamp('2008-08-08 12:30:00');  -- 1218169800

    from_unixtime(unix_timestamp),from_unixtime(1218169800);              -- '2008-08-08 12:30:00'

    from_unixtime(unix_timestamp,format),from_unixtime(1218169800, '%Y %D %M %h:%i:%s %x'); -- '2008 8th August 12:30:00 2008'

  3、时间戳转换、增、减

    timestamp(date)

    timestamp(dt,time)

    timestampadd(unit,interval,datetime_expr)

    timestampdiff(unit,datetime_expr1,datetime_expr2)

六、时区转换

  convert_tz(dt,from_tz,to_tz)

  时区转换也可以通过 date_add,date_sub,timestampadd来实现

mysql日期操作的更多相关文章

  1. mysql 日期操作 增减天数、时间转换、时间戳(转)

    转自http://www.cnblogs.com/wenzichiqingwa/archive/2013/03/05/2944485.html http://hi.baidu.com/juntao_l ...

  2. mysql 日期操作 增减天数、时间转换、时间戳(转换)

    http://hi.baidu.com/juntao_li/item/094d78c6ce1aa060f6c95d0b MySQL datediff(date1,date2):两个日期相减 date1 ...

  3. 关于MySQL日期操作函数 date_formate 的使用

    基本语法:DATE_FORMAT(date,format)说明:date 参数是合法的日期.format 规定日期/时间的输出格式.可以用的格式主要有格式 描述%a 缩写星期名%b 缩写月名%c 月, ...

  4. mysql 日期加减操作

    1. MySQL 为日期增加一个时间间隔:date_add() set @dt = now(); select date_add(@dt, interval 1 day);        -- add ...

  5. mysql日期时间操作

    select curdate(); --获取当前日期 select last_day(curdate()); --获取当月最后一天. select DATE_ADD(curdate(),interva ...

  6. MYSQL基础操作

    MYSQL基础操作 [TOC] 1.基本定义 1.1.关系型数据库系统 关系型数据库系统是建立在关系模型上的数据库系统 什么是关系模型呢? 1.数据结构可以规定,同类数据结构一致,就是一个二维的表格 ...

  7. mysql日期时间函数2

    win7可以设定每周从哪一天开始,win2003等不能方便的修改.有的是周日开始,有的是周一开始.而工作中有的时候每周是从周六开始算的,有些数据需要按周统计,那么那种方式比较好呢?   通过下面的研究 ...

  8. MYSQL 基础操作

    1.MySQL基础操作 一:MySQL基础操作 1:MySQL表复制 复制表结构 + 复制表数据 create table t3 like t1; --创建一个和t1一样的表,用like(表结构也一样 ...

  9. Mysql 时间操作

    Mysql 时间操作(当天,昨天,7天,30天,半年,全年,季度) 1 . 查看当天日期 select current_date(); 2. 查看当天时间 select current_time(); ...

随机推荐

  1. 复制id_rsa命令

    pbcopy < ~/.ssh/id_rsa.pub https://aliasan-conf.taijiankong.cn/duotai/2T7b253i8.pac

  2. python学习笔记(五)

    面向对象方法 元组的二义性:不明确参数代表的含义 circle=(2,4,6) def distance_from_origin(x,y): return "返回x,y坐标" de ...

  3. springboot 启动的时候报错 Error creating bean with name 'solrClient'

    springboot 启动的时候报错: org.springframework.beans.factory.BeanCreationException: Error creating bean wit ...

  4. spring学习笔记-AOP

    1.aop:aspect oriented programming 面向切面编程 2.aop在spring中的作用:   提供声明式服务(声明式事务) 允许用户实现自定义切面 3.aop:在不改变原有 ...

  5. react 使用 lazyload 懒加载图片

    文档地址 index.html <script> (function(w, d) { var b = d.getElementsByTagName("body")[0] ...

  6. springMVC01,使用xml

    unit03_01 unit03_02 springmvc流程图 案例:hello示例 /hello.do --> springmvc --> /WEB-INF/hello.jsp /he ...

  7. python 链表表达式 map、filter易读版

    链表推导式 [x for x in x] 链表推导式提供了一个创建链表的简单途径,无需使用 map(), filter() 以及 lambda.返回链表的定义通常要比创建这些链表更清晰.每一个链表推导 ...

  8. ArcGIS AddIN异常:无法注册程序集 未能加载文件或程序集"ESRI.ArcGIS.Desktop.Addins"

    异常: 无法注册程序集“D:\CodeXX\bin\Debug\XX.dll”.未能加载文件或程序集“ESRI.ArcGIS.Desktop.AddIns, Version=10.1.0.0, Cul ...

  9. mysql中主外键关系

    一.外键: 1.什么是外键 2.外键语法 3.外键的条件 4.添加外键 5.删除外键 1.什么是外键: 主键:是唯一标识一条记录,不能有重复的,不允许为空,用来保证数据完整性 外键:是另一表的主键, ...

  10. 洛谷P3808 【模板】AC自动机(简单版)

    题目背景 这是一道简单的AC自动机模板题. 用于检测正确性以及算法常数. 为了防止卡OJ,在保证正确的基础上只有两组数据,请不要恶意提交. 管理员提示:本题数据内有重复的单词,且重复单词应该计算多次, ...