mysql 开发基础系列6 数值与日期函数
一. 数值函数

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 数值与日期函数的更多相关文章
- mysql 开发基础系列12 选择合适的数据类型(上)
一. char 与varchar比较 在上图的最后一行的值只适用在"非严格模式",关于严格模式后面讲到.在“开发基础系列4“ 中讲到CHAR 列删除了尾部的空格.由于char是固定 ...
- mysql 开发基础系列3 日期数据类型
日期类型 如果要用来表示年月日,通常用DATE 来表示. 如果要用来表示年月日时分秒,通常用DATETIME 表示. 如果只用来表示时分秒,通常用TIME 来表示. TIMESTAMP表示格式 :YY ...
- mysql 开发基础系列22 SQL Model
一.概述 与其它数据库不同,mysql 可以运行不同的sql model 下, sql model 定义了mysql应用支持的sql语法,数据校验等,这样更容易在不同的环境中使用mysql. sql ...
- mysql 开发基础系列17 存储过程和函数(上)
一. 概述 存储过程和函数是事先经过编译并存储在数据库中的一段sql语句集合,可以简化应用开发人员的很多工作,减少数据在数据库与应用服务器之间的传输,提高数据处理效率是有好处的.存储过程和函数的区别在 ...
- mysql 开发基础系列15 索引的设计和使用
一.概述 所有mysql 列类型都可以被索引,是提高select查询性能的最佳方法. 根据存储引擎可以定义每个表的最大索引数和最大索引长度,每种引擎对每个表至少支持16个索引,总索引长度至少为256字 ...
- mysql 开发基础系列13 选择合适的数据类型(下)
一. BloB和Text 1. 合成索引 合成索引可以提高大文本字段BLOB和Text的查询性能, 合成索引是在表中增加一个字段存放散列值,这种技术只能用于精确匹配的查询,可以使用md5()或sha ...
- mysql 开发基础系列2 整型数据类型
Mysql 的数据类型 1. 对整数类型, Mysql 还支持类型名称后面的小括号内指定的显示宽度,例如int(5) 表示宽度小于5位时填满宽度,如果不显示指定宽度默认是int(11),一般配合zer ...
- mysql 开发基础系列20 事务控制和锁定语句(上)
一.概述 在mysql 里不同存储引擎有不同的锁,默认情况下,表锁和行锁都是自动获得的,不需要额外的命令, 有的情况下,用户需要明确地进行锁表或者进行事务的控制,以便确保整个事务的完整性.这样就需要使 ...
- mysql 开发基础系列18 存储过程和函数(下)
1. 光标的使用(游标) 在存储过程和函数中可以使用光标对结果集进行循环的处理,光标使用包括光标的声明,open ,fetch,close. 下面在存储过程中使用一个光标, 这个举例中光标里的逻辑不重 ...
随机推荐
- mongodb内嵌文档的javaapi,增删改查
数据结构: {"_id" : "000000001", //Mongodb默认主键 "UID" : "000000001&quo ...
- 【Python】【BugList12】python自带IDLE执行print(req.text)报错:UnicodeEncodeError: 'UCS-2' codec can't encode characters in position 93204-93204
[代码] # -*- coding:UTF-8 -*- import requests if __name__ == '__main__': target = 'https://unsplash.co ...
- CODEFORCES ROUND #761 ANALYSES BY TEAM:RED & BLACK
A. Dasha and Stairs Problems: 一个按照1,2,3……编号的楼梯,给定踩过的编号为奇数奇数和偶数的楼梯数量a和b,问是否可以有区间[l, r]符合奇数编号有a个,偶数编号有 ...
- 20175316 盛茂淞 Arrays和String单元测试
Arrays和String单元测试 具体描述: 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt split Arr ...
- web安全系列4:google语法
这是web安全的第四篇,欢迎翻看前面几篇. 前面我们介绍了一些和HTTP有关知识,那么一个疑问就是黑客要做的第一件是什么?其实很简单,确定一个目标,然后搜集信息. 这很容易理解,我们无论做什么都得先有 ...
- 添加sqljdbc的maven依赖JAVA环境配置
sqljdbc是微软sql server的jdbc驱动 使用sqljdbc需要从微软的官方网站下载jar包: http://www.microsoft.com/en-us/download/detai ...
- OPC转发阿里云alink工具
这个最近还在做 2019-04-24 今天抽空吧基本mqtt上传,OPC遍历,导出物模型功能先做了 上报操作日志,上报错误信息,导入参数,导出参数还没做 有需要可以联系微信NBDX123
- 随便写写,也有一些参考了我jio的很好的他人的成果
Spring框架学习记录(1) 一. https://www.cnblogs.com/yuanqinnan/p/10274934.html (一)只要用框架开发java,一定躲不过spring,Spr ...
- [转] AppArmor
AppArmor https://help.ubuntu.com/14.04/serverguide/apparmor.html AppArmor 是一个实施了基于名称强制存取控制的Linux安全模组 ...
- Oracle数据库用EF操作的示例
Using EF Oracle Sample Provider with EDM Designer (from msdn) Many people are asking if it is possi ...