一、获取当前日期时间

  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. session 和 cookie (转)

    会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端 ...

  2. 使用redis原生list结构作为消息队列取代celery框架。

    1.web后台对大批量的繁重的io任务需要解耦使用分布式异步技术,否则会使接口阻塞,并发延迟,一般就选celery好了.此篇的取代主要是针对取代celery的worker模式.没有涉及到周期和定时模式 ...

  3. BCP文件导入SQLServer数据库遇到的问题

    1. BCP文件插入sql server数据库,未指定数据库字段类型情况下,需要每个字段单独指定字段长度 2.文件中的存储值得类型 3.设置最大的类型

  4. 135、JS和Android交互范例

    很简单的直接上代码 <uses-permission android:name="android.permission.INTERNET" /> assets/web. ...

  5. Tensorflow一些常用基本概念与函数

    1.tensorflow的基本运作 为了快速的熟悉TensorFlow编程,下面从一段简单的代码开始: import tensorflow as tf #定义‘符号’变量,也称为占位符 a = tf. ...

  6. ASP.NET MVC+HighCharts开发统计图表

    HighCharts是开源的Web图表js组件,与D3.js一样,经常用于数据可视化.HighCharts图表类型丰富,功能非常强大,是很好的数据可视化解决方案,其官方网站为:http://www.h ...

  7. GO语言-基础语法:条件判断

    1. IF判断(aa.txt内容:asdfgh.bb.txt内容:12345) package main import ( "io/ioutil" "fmt" ...

  8. Nestjs 序列化(Serialization)

    文档 在发送实际响应之前,Serializers为数据操作提供了干净的抽象层.例如,应始终从最终响应中排除敏感数据(如用户密码) λ yarn add class-transformer cats.e ...

  9. python_str 字符串的所有方法

    # _Author:huang# date: 2017/11/28 # 字符串 '''print("hello" * 3)print("hello world" ...

  10. Codeforces 1072 - A/B/C/D - (Done)

    链接:http://codeforces.com/contest/1072/ A - Golden Plate - [计算题] #include<bits/stdc++.h> using ...