一. 数值函数

  

1.  abs(x) 返回x的绝对值

SELECT ABS(-0.8),ABS(0.8);

2.ceil(x) 返回大于x的最大整数

SELECT CEIL(-0.8),CEIL(0.8);

3.floor(x) 返回小于x的最大整数

SELECT FLOOR(-0.8),FLOOR(0.8);

4.mod(x,y) 返回x/y的模

SELECT MOD(15,10),MOD(1,11),MOD(NULL,10)

5. rand() 返回0到1内的随机值

SELECT RAND(),RAND();

还可是指定范围的随机数,如0~100的值

SELECT CEIL(100*RAND());

6.round(x,y) 返回参数x的四舍五入的有y位小数的值,如果不写y,默认为0

SELECT ROUND(1.1),ROUND(1.1,2),ROUND(1.0,3)

7. truncate(x,y) 返回数字x截断为y位小数的结果,看看与round的区别

SELECT ROUND(1.235,2),TRUNCATE(1.235,2);

二. 日期与时间函数

1. curdate()  返回当前日期,只有年月日

SELECT CURDATE();

2. curtime(): 返回当前时分秒

SELECT CURTime();

3.now() 返回年月日时分秒

SELECT NOW();

4. UNIX_TIMESTAMP(date) 返回unix 时间截

  SELECT UNIX_TIMESTAMP(NOW())

5. FROM_UNIXTIME (unixtime) 和UNIX_TIMESTAMP互转

SELECT FROM_UNIXTIME(1530265708)

6. week(date)和year(date),返回一年的第几周,各年份

SELECT WEEK(NOW()),YEAR(NOW());

7.hour(time)和 minute(time) 返回小时和分钟

  SELECT HOUR(CURTIME()),MINUTE(CURTIME());

8. monthname(date) 返回时间英文月份

 SELECT  MONTHNAME(NOW());

9. date_format(date,fmt)按指定的格式显示日期

下面的例子将当前时间显示为 "月,日,年" 格式

SELECT  DATE_FORMAT(NOW(),'%M,%D,%Y')

 10. date_add(date,interval expr type)    返回与所给日期date相差interval时间段的日期

  

  下面例子第1列返回当前日期时间, 2列返回距当前日期31天后的日期时间,3列返回距当前日期一年两个月后的日期时间。 (也可以用负数表示后退的日期时间)

SELECT NOW() AS current,
DATE_ADD(NOW(),INTERVAL 31 DAY) AS after31dyas,
DATE_ADD(NOW(),INTERVAL '1_2' YEAR_MONTH) AS after_oneyear_twomonth;

11. datediff(date1,date2) 用来计算两个日期之间相差的天数

 SELECT DATEDIFF('2018-08-08',NOW())    

mysql 开发基础系列6 数值与日期函数的更多相关文章

  1. mysql 开发基础系列12 选择合适的数据类型(上)

    一. char 与varchar比较 在上图的最后一行的值只适用在"非严格模式",关于严格模式后面讲到.在“开发基础系列4“ 中讲到CHAR 列删除了尾部的空格.由于char是固定 ...

  2. mysql 开发基础系列3 日期数据类型

    日期类型 如果要用来表示年月日,通常用DATE 来表示. 如果要用来表示年月日时分秒,通常用DATETIME 表示. 如果只用来表示时分秒,通常用TIME 来表示. TIMESTAMP表示格式 :YY ...

  3. mysql 开发基础系列22 SQL Model

    一.概述 与其它数据库不同,mysql 可以运行不同的sql model 下, sql model 定义了mysql应用支持的sql语法,数据校验等,这样更容易在不同的环境中使用mysql. sql ...

  4. mysql 开发基础系列17 存储过程和函数(上)

    一. 概述 存储过程和函数是事先经过编译并存储在数据库中的一段sql语句集合,可以简化应用开发人员的很多工作,减少数据在数据库与应用服务器之间的传输,提高数据处理效率是有好处的.存储过程和函数的区别在 ...

  5. mysql 开发基础系列15 索引的设计和使用

    一.概述 所有mysql 列类型都可以被索引,是提高select查询性能的最佳方法. 根据存储引擎可以定义每个表的最大索引数和最大索引长度,每种引擎对每个表至少支持16个索引,总索引长度至少为256字 ...

  6. mysql 开发基础系列13 选择合适的数据类型(下)

    一.  BloB和Text 1. 合成索引 合成索引可以提高大文本字段BLOB和Text的查询性能, 合成索引是在表中增加一个字段存放散列值,这种技术只能用于精确匹配的查询,可以使用md5()或sha ...

  7. mysql 开发基础系列2 整型数据类型

    Mysql 的数据类型 1. 对整数类型, Mysql 还支持类型名称后面的小括号内指定的显示宽度,例如int(5) 表示宽度小于5位时填满宽度,如果不显示指定宽度默认是int(11),一般配合zer ...

  8. mysql 开发基础系列20 事务控制和锁定语句(上)

    一.概述 在mysql 里不同存储引擎有不同的锁,默认情况下,表锁和行锁都是自动获得的,不需要额外的命令, 有的情况下,用户需要明确地进行锁表或者进行事务的控制,以便确保整个事务的完整性.这样就需要使 ...

  9. mysql 开发基础系列18 存储过程和函数(下)

    1. 光标的使用(游标) 在存储过程和函数中可以使用光标对结果集进行循环的处理,光标使用包括光标的声明,open ,fetch,close. 下面在存储过程中使用一个光标, 这个举例中光标里的逻辑不重 ...

随机推荐

  1. 2018上IEC计算机高级语言(C)作业 第3次作业_说明

    一.博客作业内容 2018上IEC计算机高级语言(C)作业 第3次作业 二.评分规则说明 1.程序调试题,要描述出调试所遇到问题及修改内容,并表述清楚程序功能.流程图不规范的会减1-2分: 2.知识点 ...

  2. 手机号读取城市数据库2018年3月excel版

    EXCEL表中是更新到2018年3月份的手机归属地数据库. 手机号读取城市数据库2018年3月excel版.zip

  3. 实战操作——通过wireshark查看任意qq好友IP

    今天有群里好友问我如何查看别人IP,查IP这个东西对于一些刚入门的小白来说可能是一个比较高大上的玩意,但是实际上只需一个网络协议分析工具就OK,废话不多说,下面开始实践 实验对象:任意QQ好友 操作工 ...

  4. javascript生成器

    next()方法 如果给next方法传参数, 那么这个参数将会作为上一次yield语句的返回值 ,这个特性在异步处理中是非常重要的, 因为在执行异步代码以后, 有时候需要上一个异步的结果, 作为下次异 ...

  5. JPA-学习02

    一.主键生成策略 主键:确定一张表的唯一性东西(非空且唯一) 分为:自然主键和代理主键. 生成策略: identity:自增策略(1.值必须是数字,2.数据库支持) sequence:序列策略(同上, ...

  6. LOJ-10092(最大半连通子图)

    题目连通:传送门 思路: 题目定义很清晰,然后就不会了QAQ…… 后来看了书,先缩点,然后再用拓扑排序找到最长的链子的节点数(因为缩点后所有点都是一个强连通分量,所以找最长的链子就是最大限度包含 点的 ...

  7. 如何从本地远程访问虚拟机内的Mysql服务器?

    假设重装了操作系统,则本地的很多软件可能都需要重新安装,比如数据库.但是,假设我们把一些重要的软件安装在虚拟机当中,则在重装操作系统之前,数据库服务器可以和虚拟机一起进行备份.重装操作系统之后,原先的 ...

  8. 两种 js下载文件的方法(转)

    function DownURL(strRemoteURL, strLocalURL){         try{             var xmlHTTP = new ActiveXObjec ...

  9. 如何封装使用api形式调用的vue组件

    在实际开发中一般有两种封装vue组件的方法:一种就是常用的的通过props父组件传值给子组件的方法: 子组件 父组件: 还有一种就是通过调用api的形式,下面例子是本人在实际项目中封装的一个自定义图标 ...

  10. Android中弹出dialog后无法捕捉back键

    一.需求 在Android开发过程中,弹出dialog后无法捕捉back键,点击back按键无响应. 二.解决方案 原因:弹出dialog后,activity失去焦点,dialog获得当前焦点. 解决 ...