一、获取当前日期时间

  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. Java对象序列化和反序列化的工具方法

    import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...

  2. 在vue中使用highcharts的仪表图等扩展

    仪表图(”solidgauge“)在highcharts中属于扩展,单独引入highcharts使用仪表图会报错,需要在你的组件中做一谢其他的引入: // 最主要是这里模块的引入 很坑 import ...

  3. Oracle同义词(synonym)

    oracle的同义词总结   从字面上理解就是别名的意思,和视图的功能类似.就是一种映射关系.   同义词拥有如下好处:   节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;   扩展的数 ...

  4. grafana安装和配置(centos7上配置)

    author:  headsen  chen date:  2019-03-29  10:33:19 1,安装: yum install https://s3-us-west-2.amazonaws. ...

  5. 1.13flask完结

    2019-1-13 14:16:26 终于完结flask,开始爬虫啦!!!! 还有 一些爬虫视频没看完,余下的就一点啦! 老师整理了flask的总结!和一些组件的使用! 打算重装一下电脑,边看视频,边 ...

  6. 3D Slicer Programmatically Set Slice Offset and Intersections 用代码修改Slicer中的切片偏移和交叉点显示

    在3D Slicer中,当我们导入.mha/.mhd等格式的volume文件后,那么我们就可以在Axial, Sagittal, Coronal三个方向来观察我们的MRI或者CT的图像了.3D Sli ...

  7. 查询数据库中含clob,blob的表

    查询含clob,blob的表select distinct ('TABLE "' || a.OWNER || '"."' || a.TABLE_NAME || '&quo ...

  8. chrome 调试进入 paused in debugger 状态解决办法

    今天调试代码的时候总是一刷新就进入 debugger 状态,总是需要按几次 F8 才能进到页面,我那个暴脾气啊,几次后终于是忍不住了,然后再网上找到了解决办法.就如一位网友所说,“Oh God! I ...

  9. SecureCRT操作指令

    连接服务器,文件——连接SFTP会话,然后可以help查看命令 传输文件需要明确并处在客户端和服务器端两个正确路径下, 服务器端的操作: cd——去服务器指定的路径 pwd——查看服务器端当前目录 l ...

  10. Python学习之旅(十九)

    Python基础知识(18):面向对象高级编程(Ⅰ) 使用__slots__:限制实例的属性,只允许实例对类添加某些属性 (1)实例可以随意添加属性 (2)某个实例绑定的方法对另一个实例不起作用 (3 ...