Day31
一、单行函数
定义:每一行都会执行一次的函数
分类:
1、数值型
(1)round (值,保留几位):表示四舍五入保留到小数后几位。若符号为负,表示小数点往前数。
例如:
select round(123.956,2) 结果:123.96
select round(153.956,-2) 结果:200
(2)truncate(值,位数) :表是值从小数后第几位位置开始截断,不进行四舍五入,若符号为负,表示小数点往前数。
例如:
select TRUNCATE(123.956,2)结果:123.95
select TRUNCATE(123.956,-2)结果:100
2、字符型
(1)substr(str,起始位置,截取长度):从起始位置对字符串截取,将截取之后的信息展示出来。字符串的位置从1开始。若起始位置为负数,则说明字符串从后面开始数,再进行截取。
例如:select SUBSTR(‘abcdefg’,3,4)结果:cdef
select SUBSTR(‘abcdefg’,-5,4)结果:cdef
(2)length():表示字节长度
例如:select length(‘中国’); 结果:6
(3)char_length():表示字符长度
例如:select CHAR_LENGTH(‘中国’); 结果:2
(4)trim(要去掉字符串 from 原来的字符串):表示去掉两端指定的字符
例如:select TRIM(’ ’ from ’ a b c d ‘);结果:a b c d
(5)replace(str, 老串,新串) :表示用新的字符串代替旧的字符串
例如:select REPLACE(‘abcadeafg’,‘a’,‘q’) 结果:qbcqdeqfg
(6)instr(串,子串):表示子串在字符串中第一次出现的位置
例如:select INSTR(‘abcabc’,‘b’) 结果:2
求abcabc中第二次出现b 的位置
select INSTR(substr(‘abcabc’,INSTR(‘abcabc’,‘b’)+1),‘b’) +INSTR(‘abcabc’,‘b’)
3、日期型
now():表示当前日期时间
select year(now()) :显示年
select month(now()):显示月
select day(now()):显示日
select date(now()):显示当前日期 例如:2019-04-16
select HOUR(now());:显示时
select MINUTE(now());:显示分
select SECOND(now());:显示秒
select ADDDATE(now(),2):在当前时间的基础上加两天 或者:select date(now())+2;
select SUBDATE(now(),2):在当前日期上减两天 或者select date(now())-2;
4、转换型
(1)隐式转换:自动转
例如:insert into pet (age) values(‘20’)
insert into pet (birthday) values(‘2019-09-08’);
(2) 显式转换
1)str_to_date(str,’%Y-%m-%d %H:%i:%s’ ):表示将字符串转换为日期类型
例如:select STR_TO_DATE(‘2019-09-08’,’%Y-%m-%d %h%i%s’)2)date_format(now(),’%Y-%m-%d %H:%i:%s’):表示将日期转换为字符串
例如:select date_format(now(),’%Y-%m-%d %H:%i:%s’) 2019-04-16 11:09:24
Day31
最新推荐文章于 2023-05-09 23:45:45 发布