一 日期和时间函数

函数的概念:按指定格式输入参数,返回正确结果的运算单元

1. 返回当前日期:curdate()

current_date()

current_date()+0可以将当前日期转换为数值型

例: select curdate(), current_date(), curdate()+0

2015-09-22       2015-09-22       20150922

2. 返回当前时间:curtime()

current_time()

current_time()+0

例:select curtime(),current_time(),curtime()+0

20:47:53          20:47:53        204753

3. 返回当前日期和时间:current_timestamp()

localtime()

now()

sysdate()

例: select now() as '此时此刻',sysdate() as '此时此刻2'

4. 获取月份: month(date)

monthname(date)

例:select month('2015-07-22') ----> 7

select monthname('2015-07-22') ---->July

5. 获取星期:dayname(date)

dayofweek(date)

weekday(date)

week(date)

weekofyear(date)

例:select dayname('2015-09-23') --->Wednesday

select dayofweek('2015-09-23') --->3(以星期天作为第一天)

select weekday('2015-09-23') --->1(以星期一为第0天)

select week('2015-01-01') --->0(在一年中属于哪个星期)

select weekofyear('2015-01-01') --->1(在一年中属于哪个星期)

6. 获取天数:dayofyear(date) ---->计算参数所指定的日期在这一年中是属于第几天

dayofmonth(date)---->计算参数所指定的日期在这一月中是属于第几天

例:select week('2015-01-01') -->1

select week('2015-01-01') --->1

7.获取年份,季度,小时,分钟,秒钟

year(date)           select year('2015-01-01') -->2015

quarter(date)       select quarter('2015-09-22') --->3

hour(time)

minute(time)

second(time)

二 数学函数

1. 绝对值函数 ->ABS(X)

例:select ABS(-8) -->8

2. 符号函数sign(x):判断一个数字是正数还是负数还是零?(正数返回值为1,负数返回值为-1,零返回值是0)

例:select sign(-8) -->-1

3. 获取随机数的函数:rand()    例:select rand() --> (每次运行将产生一个新的随机数)

rand(x)   例:select rand(3) --> 产生的随机数为固定的数

4. 获取整数的函数:ceil(x)   ceilung(x)  例:select ceil(3.5) -->4 (取不小于3.5的最小整数)

floor(x)            例:select floor(3.5) -->3(取小于3.5的最大整数)

5.四舍五入函数:round(x)      例:select round(3.5) ---> 4

round(x,y)    例:select floor(3.14,1) --->3.1(保留小数位数1)

例:select floor(3.14,-1) --->0 (保留到十位数)

truncate(x,y)  例:select truncate(3.15,1) --->3.1(只保留一位小数,不进行四舍五入直接截去)

6. 求余数函数:mod(x,y)       例:select mod(31,8) --->7

7. 幂运算函数:pow(x,y)/power(x,y) 求x的y次幂        例:select pow(2,3) --->8

exp(x) 求自然对数的幂

sqrt(x) 求某一个数的平方根     例:select sqrt(2) ----1.41421356237

select sqrt(9) ---- 3

8.角度弧度互换函数:radians(x) 将角度互换成弧度    例:select radians(180) --->3.1415926...

degrees(x) 将弧度变换成角度   例:select degrees(3.14) --->179.9.8...

9. 圆周率函数:PI()

10. 三角函数:sin(x) 正弦

asin(x) 反正弦

cos(x) 余弦

acos(x) 反余弦

tan(x) 正切

atan(x) 反正切

cot(x) 余切

三 字符串函数

1.计算字符数和字符串长度的函数

char_length(s):计算字符串中有几个字符

例: select char_length('abc') --->3

例: select char_length('你好吗') --->3

length(s):计算字符串在内存中占几个字节

例: select length('abc') --->3

例: select length('你好吗') --->9

2.合并字符串函数:   concat(s1,s2...) 把参数中的字符串连接成一个新的字符串              例:select concat('你好吗','abc','word') --->你好吗abcword

concat_ws(x,s1,s2...)  例:select concat_ws('#','你好吗','abc','word')---->你好吗#abc#word

3.替换字符串函数:INSERT(S1,X,LEN,S2)  在S1这个字符串当中以X位置开头数len这样长度的字符串给它替换成S2

例:select insert('ABCDEF','2','3','##') --->A##EF

REPLACE(S,S1,S2)  把原始的字符串中的某个子字符串用另一个字符串代替

例:select insert('ABCDEFAB','ab','%') --->%CDEF%

4.截取字符串的函数:left(s,n)   例:select left('ABCDEFAB','3') --->ABC

right(s,n)  例:select right('ABCDEFAB','3') --->FAB

5.重复生产字符串函数:repeat(s,n)  例: select repeat('ABC','3') --->ABCABCABC

6.大小写转换的函数:lower(x,y)/lcase(x)  例:select lcase('ABC')--->abc

upper(x)/ucase(x)   例:select ucase('abc')--->ABC

7.填充字符串的函数:lpad(s1,len,s2) 从左边开始填充  例:select lpad('ABCd',10,'#')---->######ABCd

rpad(s1,len,s2) 从右边开始填充  例:select rpad('ABCd',10,'#')----->ABCd######

8.删除空格函数:LTRIM(S)/RTRIM(S) 删除左边的空格/删除右边的空格 例:select RTRIM('   ABCd   ') - ->   ABCd

TRIM(S)  删除两边的空格   例:select TRIM('   ABCd   ')----->ABCd

9.删除指定字符串:Trim(s1 from s)   例:select trim('A',from 'ABCADE') --->BCADE (删除靠边的A)

10.获取子字符串:SUBSTRING(S,N,LEN)  例:select substring('ABCADE',3,2)----->CA

MID(S,N,LEN)      例:select substring('ABCADE',3,2)----->CA

11.返回指定位置字符串函数:ELT(N,S1,S2....)  例:select elt(2,'ABC','DEF','MYSQL')  ---->DEF

12.返回指定字符串位置:FIELD(S,S1,S2...)  例:select field('HI','HI','HO','HE','HU') ---->1

三 系统函数

1. 获取MySQL版本号的函数:version()     例: select version()

2. 查看当前的用户连接数:connection_id()   例:select connection_id

3. 查看当前所用数据库函数:datebase()

schema9()

4. 获取用户名的函数:user()                例:select user(),current_user(),system_user(),session_user() ----root@localhost

current_user()

system_user()

session_user()

MySQL数据库9 - 日期与时间函数的更多相关文章

  1. MySQL中的日期和时间函数

    常用日期函数如下: 函   数 功   能 CURDATE() 获取当前日期 CURTIME() 获取当前时间 NOW() 获取当前的日期和时间 UNIX_TIMESTAMP(date) 获取日期的U ...

  2. 开发过程中 的一些 补充知识点 + 关于mysql中的日期和时间函数?

    参考: https://www.jb51.net/article/23966.htm https://yq.aliyun.com/articles/260389 mysql中的 日期格式是: HHHH ...

  3. MySQL数据库—日期与时间函数

    一. 日期和时间函数 函数的概念:按指定格式输入参数,返回正确结果的运算单元 1. 返回当前日期:curdate() current_date() current_date()+0可以将当前日期转换为 ...

  4. MySQL 笔记 —— 日期和时间函数

    [TOC] 获取当前日期的函数和获取当前时间的函数 CURDATE()和CURRENT_DATE()函数获取当前日期:CURTIME()和CURRENT_TIME()函数获取当前时间. mysql&g ...

  5. MySql日期与时间函数

    select DATE_FORMAT(date_sub(current_date(), interval 1 day), '%Y-%m-%d') -- 2018-05-29(昨天) select DA ...

  6. 日期时间函数 mysql 和sqlserver 中对于常用函数的日期和时间函数的区别

    1. sqlserver中获取时间用getdate(),默认返回格式是2019-01-21 13:58:33.053,具体的年月日,时分秒毫米,年月日之间用短线连接,时分秒之间用冒号连接,秒和毫米之间 ...

  7. 转)MySQL日期与时间函数

    -- MySQL日期时间处理函数 -- 当前日期:2017-05-12(突然发现今天512,是不是会拉防空警报) SELECT NOW() FROM DUAL;-- 当前日期时间:2017-05-12 ...

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

    MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...

  9. MySQL中的日期和时间:使用和说明,以及常用函数

    1.首先需要注意: 1.1 MySQL中把日期和时间是分开的. 以字符串2007-12-31 00:59:59为例: 日期部分:2007-12-31.这部分也可以叫做一个日期表达式. 时间部分:00: ...

随机推荐

  1. ie8兼容性(不支持trim 、readonly光标、乱码encodeURI())

    IE8下String的Trim()方法失效的解决方案 1.用jquery的trim()方法,$.trim(str)就可以了. 2.String扩展: 第一种 String.prototype.trim ...

  2. AS3和js相互通信要点分析

    目标:在html页面里可以使用事件来影响到swf文件的内容,swf文件也可以影响html里js代码的内容 一.新建flash文件,用Flash CC试用版新建一个TextArea.fla的源文件,不添 ...

  3. python——django使用mysql数据库(二)

    上一篇中,我们已经讲述了如何初始化一个django数据库,这一章就来讲讲在实际的项目中如何使用我们初始化的数据库呢? 如还未进行初始化数据库操作,请参考python——django使用mysql数据库 ...

  4. 3个sprint的团队贡献分

    第一次冲刺贡献分   成员名字 贡献分 101丘娟 23 108周诗琦 26 107杨晓霞 24 124陈程 27     第二次冲刺贡献分   成员名字 贡献分 101丘娟 23 108周诗琦 27 ...

  5. ASCII表

    ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧 ...

  6. Eclipse Android 解决Gen文件夹为空的问题

    通常这个问题的表现为Eclipse报错:R cannot be resolved to a variable 原因是因为Eclipse没有帮我们自动生成固定资源的索引.导致Gen文件夹下为空. 网上的 ...

  7. Nehe Opengl

    http://nehe.gamedev.net/tutorial/lessons_01__05/22004/ Nehe Opengl,据说从基础到高端进阶都是很好的教程,准备学习这个序列,顺便记录下随 ...

  8. RabbitMQ Step by step(一) 安装

    RabbitMQ是一个消息中间件,可以存储转发消息,个人感觉优越于MSMQ RabbitMQ官方网站(http://www.rabbitmq.com)可以获取到安装文件,建议大家详细浏览官方网站,官方 ...

  9. http——tinyhttp分析

    1.前言: 1)tinyhttpd是一个500行+的http服务器 2)支持迭代和多线程并发两种服务器模型 3)支持GET和POST方法 4)支持CGI(fork.execl方式) 5)虽然响应的ht ...

  10. N皇后问题-Hdu 2553

      题目描述: 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上. 你的任务是,对于给定的N,求出有多少种合法的放置 ...