Mysql学习笔记(五)数学与日期时间函数

时间:2022-09-24 14:06:35

学习内容:

1.数学函数

2.日期时间函数

这些函数都是很常用的函数...在这里进行简单的介绍...

数学函数:

mysql> SELECT ABS(-32); //取绝对值函数
-> 32
这个函数可安全地使用于 BIGINT 值。 mysql> SELECT SIGN(-32);//判断一个数是正数,负数,还是0.。根据实际情况返回指定的数值..
-> -1 mysql> SELECT MOD(234, 10);//取模函数...
-> 4 mysql> SELECT FLOOR(1.23);//返回不大于给出数的最大整数值
-> 1 mysql> SELECT CEILING(1.23);//返回不小于这个数的整数值
-> 2 mysql> SELECT ROUND(-1.23);//四舍五入函数
-> -1 mysql> SELECT 5 DIV 2//整除函数
-> 2 mysql> SELECT EXP(2);//返回指数e的指定次方
-> 7.389056 mysql> SELECT LN(2);//返回给出数的自然对数
-> 0.693147 mysql> SELECT LOG(2);//返回给出数的自然对数
-> 0.693147 mysql> SELECT POW(2,2);//返回x数的y次幂,并且返回值为浮点类型..
-> 4.000000 mysql> SELECT RAND();//随机产生一个0-1的小数..
-> 0.9233482386203 mysql> SELECT RADIANS(90);//将一个数转换为弧度
-> 1.570796

只是一些常用的数学函数...

日期与时间函数

简单的介绍几个函数...很常用的就不进行举例了...

Week(date) <==>Week(date,first)这个函数用来返回给定日期的周数...这个函数根据给定的first来确定返回数值的实际范围...

   值                 含义
   0 一周以星期天开始,返回值的范围为0-53
   1 一周以星期一开始,返回值的范围为0-53
   2 一周以星期日开始,返回值的范围为1-53
   3 一周以星期一开始,返回值的范围为1-53(iso 8601)

Period_add(p,n)增加N各月到指定的日期值中,并返回日期值...

mysql> SELECT PERIOD_ADD(9801,2);
-> 199803

Period(p1,p2)返回p1-p2之间的月数..

mysql> SELECT PERIOD_DIFF(9802,199703);
-> 11

date_add(date,Interval expr type)<==>adddate(date,Interval expr type)

date_sub(date,Interval expr type)<==>subdate(date,Interval expr type)

这两个函数根据给定的日期date,按照expr指定的规则对date进行修改....type是一个关键字,它指定表达式以何种格式被解释...

type值 expr期望的格式
second seconds
minute minutes
hour hours
day days
month months
year years
minute_second "minute:second"
hour_minute "hour:minute"
day_hour "days:hour"
year_month "year-month"
hour_second "hours:minutes:second"
day_minute "days:hours:minutes"
day_second "days hours:minute:second"
mysql> SELECT "1997-12-31 23:59:59" + INTERVAL 1 SECOND;
-> 1998-01-01 00:00:00
mysql> SELECT "1998-01-01" - INTERVAL 1 SECOND;
-> 1997-12-31 23:59:59
mysql> SELECT DATE_ADD("1997-12-31 23:59:59",
-> INTERVAL "1:1" MINUTE_SECOND);
-> 1998-01-01 00:01:00
mysql> SELECT DATE_SUB("1998-01-01 00:00:00",
-> INTERVAL "1 1:1:1" DAY_SECOND);
-> 1997-12-30 22:58:59
mysql> SELECT DATE_ADD("1998-01-01 00:00:00",
-> INTERVAL "-1 10" DAY_HOUR);
-> 1997-12-30 14:00:00

date_format(date,format)依照format来初始化date的函数...

mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y');
-> 'Saturday October 1997'
mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%H:%i:%s');
-> '22:23:00'
mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00',
'%D %y %a %d %m %b %j');
-> '4th 97 Sat 04 10 Oct 277'

now()<==>sysdate()<==>current_timestamp 取现在的系统时间...

mysql> SELECT NOW();
-> '2015-04-29 11:02:56';

sec_to_time(seconds)将分钟转换为正常的时间...

time_to_sec(time) 上述函数的逆置。。。

mysql> SELECT SEC_TO_TIME(2378);
-> '00:39:38'
mysql> SELECT TIME_TO_SEC('22:23:00');
-> 80580

Mysql学习笔记(五)数学与日期时间函数的更多相关文章

  1. MySQL学习笔记五:数据类型

    MySQL支持多种数据类型,大致可以分为数值,日期/时间和字符类型. 数值类型 MySQL支持所有标准SQL数值数据类型,包括严格数值数据类型(INTEGER.SMALLINT.DECIMAL和NUM ...

  2. Java8学习笔记(九)--日期&sol;时间(Date Time)API指南

    Java 8日期/时间( Date/Time)API是开发人员最受追捧的变化之一,Java从一开始就没有对日期时间处理的一致性方法,因此日期/时间API也是除Java核心API以外另一项倍受欢迎的内容 ...

  3. Mysql基本类型&lpar;五种年日期时间类型&rpar;——mysql之二

    转自:<MySQL技术内幕:时间和日期数据类型> http://tech.it168.com/a2012/0904/1393/000001393605_all.shtml

  4. MySQL学习笔记&lpar;五&rpar;:MySQL表级锁和行级锁

    一:概述 相对其他数据库而言,MySQL的锁机制比较简单,其最显著的特点是不同的存储引擎支持不同的锁机制.比如,MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking ...

  5. mysql学习笔记五 —— MHA

    MySQL_MHA ABB(主从复制)-->MHA(实现mysql高可用.读写分离.脚本控制vip飘逸)-->haproxy(对slave集群实现分发,负载均衡)-->keepali ...

  6. MySQL学习笔记:创建整年日期

    见识到另外一种创意,惊讶! 1.创建小数据表 0-9 # 创建小数据表 DROP TABLE IF EXISTS aa_numbers_small; CREATE TABLE aa_numbers_s ...

  7. MySql学习笔记&lpar;五&rpar; —— 存储过程

    存储过程是MySql 5支持的特性,它是一组为了完成特定功能的SQL语句集,经过编译之后存储在数据库中,当需要使用该组SQL语句时用户只需要通过指定储存过程的名字并给定参数就可以调用执行它了,简而言之 ...

  8. Mysql学习笔记(十)存储过程与函数 &plus; 知识点补充(having与where的区别)

    学习内容:存储程序与函数...这一章学的我是云里雾里的... 1.存储过程...   Mysql存储过程是从mysql 5.0开始增加的一个新功能.存储过程的优点其实有很多,不过我觉得存储过程最重要的 ...

  9. MySQL学习笔记九:存储过程,存储函数,触发器

    存储过程 1.存储过程由一组特定功能的SQL语句组成,对于大型应用程序优势较大,相对不使用存储过程,具有以下优点: a.性能提高,因为存储过程是预编译的,只需编译一次,以后调用就不须再编译 b.重用性 ...

随机推荐

  1. 关于EntityFramework在vs2012无法引用的问题

    这段时间学习MVC,发现一个问题,我公司的电脑可以直接引用EntityFrameWork这个命名空间,但我家里面的电脑就不能直接引用,刚开始以为是我电脑配置问题,后重装电脑,发现问题并没有解决. 今天 ...

  2. POJ2255二叉树

    题目大意就是给出你一个二叉树的前序和中序,要你求后序. 思路:二叉树的排序就是根据根节点的位置来定义的.所以找到二叉树的根节点是最重要的,二叉树的左子树和右子树也可以看成是二叉树,以此递归: #inc ...

  3. PHPCMS标签大全

    {$head[title]} 页面标题,用法: {$phpcms[sitename]} 网站名称 用法: {$head[keywords]} 要害字 用法: {$head[description]} ...

  4. php&lowbar;windows搭建

    Php文件放到: D:\web\Apache2.2\htdocs 修改 D:\web\PHP\php.ini 拓展 修改 D:\web\Apache2.2\conf\httpd.conf  支持php ...

  5. HADOOP源码分析之RPC(1)

    源码位于Hadoop-common ipc包下 abstract class Server 构造Server protected Server(String bindAddress, int port ...

  6. 英语口语练习系列-C04-学校生活

    连接到英语口语系列总分类 连接到上一章常用问句 登鹳雀楼 登鹳雀楼 唐代:王之涣 白日依山尽,黄河入海流. 欲穷千里目,更上一层楼. He is a fraternity brother. 他是兄弟会 ...

  7. QMessageBox对话框

    infoBox = QMessageBox() infoBox.setIcon(QMessageBox.Question) infoBox.setWindowTitle("初始化失败&quo ...

  8. ubuntu16&period;04编译安装imu&lowbar;tk

    imu_tk代码地址 https://bitbucket.org/alberto_pretto/imu_tk 安装依赖项 sudo apt-get install build-essential cm ...

  9. 连接oracle数据库报错:TNS-12516 TNS&colon;listener could not find available handler with matching protocol stack解决方法

    导致此问题的可能原因为:数据库的当前会话说不满足造成的. 解决方法如下: (1)连接数据库: [localhost@oracle]$:sqlplus  /nolog sql>conn  / as ...

  10. nyoj 38 布线问题 Kruskal and Prim

    布线问题 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 南阳理工学院要进行用电线路改造,现在校长要求设计师设计出一种布线方式,该布线方式需要满足以下条件: 1.把所有的 ...