MYSQL学习笔记三:日期和时间函数

1. 获取当前日期的函数和获取当前时间的函数

/*获取当前日期的函数和获取当前时间的函数。将日期以'YYYY-MM-DD'或者’YYYYMMDD’格式返回

*/

#CURDATE()与CURRENT_DATE()作用同样,返回同样的系统当前日期

#CURDATE()+0则将当前日期值转换成数值类型

SELECT CURDATE(), CURRENT_DATE(), CURDATE()+0;

/* CURTIME()和CURRENT_TIME()作用同样。将当前时间以'HH:MM:SS'或者’HHMMSS’格式返回

*/

#CURRENT_TIME()+0表示以数值形式HHMMSS格式显示

SELECT CURTIME(), CURRENT_TIME(), CURRENT_TIME()+0;

2. 获取当前日期与时间的函数

#从结果能够看出。以下四个函数的功能同样

SELECT CURRENT_TIMESTAMP(),LOCALTIME(),NOW(),SYSDATE();

3. 获取月份的函数

#MONTH(date):函数返回date相应的月份,范围从1~12

#MONTHNAME(date):函数返回日期date相应月份的英文全名,如March

SELECT MONTH(NOW()), MONTHNAME(NOW());

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvanNzZ190enc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

4. 获取星期的函数

#DAYNAME(d):返回d相应的工作日的英文名称,如Sunday, Monday等

#DAYOFWEEK(d):返回d相应的一周中的索引(位置)。1表示周日,2表示周一,...,7表示周六

#WEEKDAY(d):返回d相应的工作日的索引。

0表示周一,1表示周二,...6表示周日

SELECT DAYNAME(NOW()), DAYOFWEEK(NOW()), WEEKDAY(NOW());

5. 获取星期数的函数

#WEEK(d):计算日期d是一年中的第几周。

#WEEK(d,mode):指定mode是否起始于周日或者周一,若mode被省略。则使用default_week_format系统自变量的值0

#WEEK函数中Mode參数取值

Mode

一周的第一天

范围

Week 1为第一周

0

周日

0~53

本年度中有一个周日

1

周一

0~53

本年度中有3天以上

2

周日

1~53

本年度中有一个周日

3

周一

1~53

本年度中有3天以上

4

周日

0~53

本年度中有3天以上

5

周一

0~53

本年度中有一个周一

6

周日

1~53

本年度中有3天以上

7

周一

1~53

本年度中有一个周一

#WEEKOFYEAR(d):计算某天d位于一年中的第几周,范围是1~53。相当于WEEK(d,3)

SELECT WEEK(NOW()), WEEK(NOW(),0), WEEK(NOW(),1), WEEKOFYEAR(NOW()), WEEK(NOW(),3);

6. 获取天数函数

#DAYOFYEAR(d):返回d是一年中的第几天,范围从1~366

#DAYOFMONTH(d):返回d是一个月中的第几天。范围是1~31

SELECT DAYOFYEAR(NOW()), DAYOFMONTH(NOW());

7. 获取年份、季度、月、小时、分钟和秒钟的函数

#YEAR(date):返回date相应的年份,范围是1970~2069

#QUARTER(date):返回date相应的一年中的季度,范围1~4

#MONTH(date):函数返回date相应的月份,范围从1~12

#MONTHNAME(date):函数返回日期date相应月份的英文全名。如March

#HOUR(time):返回time相应的小时数。范围是0~24

#MINUTE(time):返回time相应的分钟数,范围是从0~59

#SECOND(time):返回time相应的秒数,范围是0~59

SELECT

YEAR(CURDATE()) as yr,

QUARTER(CURDATE()) as qt,

MONTH(CURDATE()) as mon,

MONTHNAME(CURDATE()) as mon_name,

HOUR(CURTIME()) as hrs,

MINUTE(CURTIME()) as min,

SECOND(CURTIME()) as snd;

8. 获取日期的指定值函数EXTRACT(type FROM date)

#用于从date中依照type提取一部分值

SELECT

EXTRACT(YEAR FROM NOW()) as year,

EXTRACT(QUARTER FROM NOW()) as quarter,

EXTRACT(MONTH FROM NOW()) as month,

EXTRACT(DAY FROM NOW()) as day,

EXTRACT(HOUR FROM NOW()) as hour,

EXTRACT(MINUTE FROM NOW()) as minute,

EXTRACT(SECOND FROM NOW()) as second,

EXTRACT(YEAR_MONTH FROM NOW()) as year_mon

;

9. 时间和秒钟转换函数TIME_TO_SEC(time)

#转换公式:<小时*3600+分钟*60+秒>

#TIME_TO_SEC(time):返回已转化成秒的time參数

#SEC_TO_TIME(seconds):返回被转化为小时、分钟和秒数的seconds參数值

SELECT

CURTIME() as time,

TIME_TO_SEC(CURTIME()) as second,

SEC_TO_TIME(TIME_TO_SEC(CURTIME())) as time;

.....待续

本文尚未完毕。同于时间关系。后面会续上。谢谢大家关照!

假设你们有更好的建议,请发邮件到我私人邮箱: david.louis.tian@outllook.com

版权@: 本文系本人原创,转载请标明出处,谢谢!

MYSQL学习笔记三:日期和时间函数的更多相关文章

  1. MySql学习笔记三

    MySql学习笔记三 4.DML(数据操作语言) 插入:insert 修改:update 删除:delete 4.1.插入语句 语法: insert into 表名 (列名1,列名2,...) val ...

  2. MySQL学习笔记(三):常用函数

    一:字符串函数 需要注意的几个细节: 1.cancat中有一个字符串为null,则结果为null. 2.left(str,x) 和 right(str,x)中x为null,则不返回任何字符串,不是nu ...

  3. MySQL学习笔记_7_MySQL常用内置函数

    MySQL常用内置函数 说明: 1)可以用在SELECT/UPDATE/DELETE中,及where,orderby,having中 2)在函数里将字段名作为参数,变量的值就是字段所对应的每一行的值. ...

  4. MySql学习笔记(三) —— 聚集函数的使用

    1.AVG() 求平均数 select avg(prod_price) as avg_price from products; --返回商品价格的平均值 ; --返回生产商id为1003的商品价格平均 ...

  5. Mysql学习笔记(四)字符串函数

    PS:终于看完了字符串函数,心都快碎了...涉及的函数真是太多了...感觉这里的字符串函数和JAVA里的基本都差不多了...基本上算是掌握了,但是想全记住那是不太可能的... 学习内容: 字符串函数的 ...

  6. mysql学习笔记三 —— 数据恢复与备份

    要点: 1.存储引擎2.导入导出3.备份与恢复 查看当前数据库中的所有表use db1:show tables: 1.存储引擎 不同的发动机(引擎)适用的汽车类型不一样. 存储和处理的不同方式.不同的 ...

  7. mysql基本数据类型(mysql学习笔记三)

    Mysql数据类型 小数: 浮点:小数位可以变化 Float单精度默认精度6位左右 Double 双精度默认精度16位左右 支持,控制数值范围 Type(M,D) M表示所有数值位数(不包括小数点和符 ...

  8. 初探swift语言的学习笔记三(闭包-匿名函数)

    作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/29353019 转载请注明出处 假设认为文章对你有所帮助,请通过留言 ...

  9. Silverlight动画学习笔记(三):缓动函数

    (一)定义: 缓动函数:可以将自定义算术公式应用于动画 (二)为什么要用缓动函数: 您可能希望某一对象逼真地弹回或其行为像弹簧一样.您可以使用关键帧动画甚至 From/To/By 动画来大致模拟这些效 ...

随机推荐

  1. VUE:项目的创建、编写、打包及规范检查

    VUE:项目的创建.编写及打包 项目的创建 使用 vue-cli 创建模板项目(官方提供的脚手架工具) https://github.com/vuejs/vue-cli npm install -g ...

  2. css预编译器——Less的使用

      方法一:仅介绍在客户端环境下使用的方法 1 新建test.less并引入.less该文件(和css一样在head处引入),注意rel="stylesheet/less": &l ...

  3. webstorm卡顿问题处理

    webstorm卡顿问题处理 学习了:http://blog.csdn.net/qq673318522/article/details/50583831 找到WebStorm.exe.vmoption ...

  4. UE4在VS2013中各个编译配置代表意义

    UE4中有个各式各样的编译配置,都怎么个意思呢? 对原文的理解和翻译. https://docs.unrealengine.com/latest/INT/Programming/Development ...

  5. codeforces Looksery Cup 2015 H Degenerate Matrix 二分 注意浮点数陷阱

    #include <cstdio> #include <cstring> #include <algorithm> #include <string> ...

  6. NOIP2017提高组模拟赛 9 (总结)

    NOIP2017提高组模拟赛 9 (总结) 第一题 星星 天空中有N(1≤N≤400)颗星,每颗星有一个唯一的坐标(x,y),(1≤x,y ≤N).请计算可以覆盖至少K(1≤K≤N)颗星的矩形的最小面 ...

  7. bzoj3732: Network(最小生成树+LCA)

    3732: Network 题目:传送门 题解: 第一眼就看到最大边最小,直接一波最小生成树. 一开始还担心会错,问了一波肉大佬,任意两点在最小生成树上的路径最大边一定是最小的. 那么事情就变得简单起 ...

  8. BZOJ 3160 FFT+Manacher

    思路: 这道题思路好奇怪--. 我们先要知道关于x (x可以是间隙) 对称的有几对字母 显然暴力是n^2的 那怎么办呢 先把所有'a'看成1 'b'看成0 意外的发现 这不就是卷积嘛 再倒过来搞一搞 ...

  9. ES6 | class类的基本语法总结

    类和模块的内部,默认就是严格模式,所以不需要使用use strict指定运行模式.只要你的代码写在类或模块之中,就只有严格模式可用. 考虑到未来所有的代码,其实都是运行在模块之中,所以 ES6 实际上 ...

  10. Java中如何使用线程

    首先了解线程的状态转换图: 在Java中一个类要当做线程来使用有两种方法: 1)继承Thread类,并重写run函数 2)实现Runnable接口,并重写run函数 Java是单继承的,但某些情况下一 ...