您的位置:首页 > 数据库 > MySQL

[知了堂学习笔记]_MySQL函数_字符串函数_数学函数_日期函数

2017-10-19 19:50 441 查看
一.字符串函数

1.lower:将字符串转换为小写
SELECT ename FROM emp
SELECT LOWER(ename) FROM emp

2.upper:将字符串转化为大写
SELECT ename FROM emp
SELECT UPPER(ename) FROM emp

3.substring:截取(abc,1,3)abc中从第一个索引到第三个索引的字段
SELECT SUBSTRING(ename,1,2) FROM emp

4.concat返回结果为连接参数产生的字符串
SELECT CONCAT(ename,empno) FROM emp

二.数学函数

1.round:返回离x最近的整数
SELECT ROUND(2.6)
SELECT ROUND(2.5)

2.mod:求余函数
SELECT MOD(32,3);

3.ceil,FLOOR:取整函数
SELECT CEIL(2.1): 返回大于或等于x的最小整数  
SELECT FLOOR(2.1):返回小于或等于x的最大整数 

三.日期函数

1.last_day():返回月份中的最后一天
SET @dt = '2008-10-10';
SELECT LAST_DAY(@dt)

2.选取日期时间的各个部分:日期、时间、年、季度、月、日、小时、分钟、秒、微秒
SET @dt = '2008-09-10 07:15:30.123456';
SELECT DATE(@dt); -- 2008-09-10
SELECT TIME(@dt); -- 07:15:30.123456
SELECT YEAR(@dt); -- 2008
SELECT QUARTER(@dt); -- 3
SELECT MONTH(@dt); -- 9
SELECT WEEK(@dt); -- 36
SELECT DAY(@dt); -- 10
SELECT HOUR(@dt); -- 7
SELECT MINUTE(@dt); -- 15
SELECT SECOND(@dt); -- 30
SELECT MICROSECOND(@dt); -- 123456

2.1extract函数: 从日期d中获取指定的值,type指定返回的值(用法同上)
SELECT EXTRACT(YEAR FROM @dt); -- 2008

3.为日期增加一个时间间隔:date_add()
SET @dt = NOW();
SELECT DATE_ADD(@dt, INTERVAL 1 DAY); -- add 1 day
SELECT DATE_ADD(@dt, INTERVAL 1 HOUR); -- add 1 hour
SELECT DATE_ADD(@dt, INTERVAL 1 MINUTE); -- ...
SELECT DATE_ADD(@dt, INTERVAL 1 SECOND);
SELECT DATE_ADD(@dt, INTERVAL 1 MICROSECOND);
SELECT DATE_ADD(@dt, INTERVAL 1 WEEK);
SELECT DATE_ADD(@dt, INTERVAL 1 MONTH);
SELECT DATE_ADD(@dt, INTERVAL 1 QUARTER);

4.为日期减去一个时间间隔:date_sub()
SET @dt = NOW();
SELECT DATE_SUB(@dt,INTERVAL 8 MONTH);

5.获取当前时间(date+time)
SELECT NOW()

6.获取当前日期date
SELECT CURDATE()

7.获取当前时间
SELECT CURTIME()

8.MONTH:查询月份
SET @dt = NOW();
SELECT MONTH(@dt)

  YEAR:查询年份
SET @dt = NOW();
SELECT YEAR(@dt)

9.dayof... 函数:dayofweek(), DAYOFMONTH(), DAYOFYEAR()
 返回日期参数,在一周、一月、一年中的位置。
SET @dt = NOW();
SELECT @dt
SELECT DAYOFWEEK(@dt):
SELECT DAYOFMONTH(@dt):本月的第12天
SELECT DAYOFYEAR(@dt):本年的285天

10.weekofyear(@dt)):计算“某天”是位于一年中的第几周
SET @dt = NOW();
SELECT WEEKOFYEAR(@dt)

11.dayname(), MONTHNAME():返回星期和月份名称函数
SELECT DAYNAME('2011-11-11 11:11:11')
SELECT MONTHNAME('2011-1-11 11:11:11')

12.current_timestamp, CURRENT_TIMESTAMP():获得当前时间戳函数
SELECT CURRENT_TIMESTAMP()

13.时间戳(timestamp)转换、增、减函数:
TIMESTAMP(DATE) -- date to timestamp
TIMESTAMP(dt,TIME) -- dt + time
TIMESTAMPADD(unit,INTERVAL,datetime_expr) --
TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2) --

SELECT TIMESTAMP('2008-08-08'); -- 2008-08-08 00:00:00
SELECT TIMESTAMP('2008-08-08 08:00:00', '01:01:01'); -- 2008-08-08 09:01:01
SELECT TIMESTAMP('2008-08-08 08:00:00', '10 01:01:01'); -- 2008-08-18 09:01:01

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐