- 文本处理函数
- 时间/日期处理函数
- 数值处理函数
- 文本处理函数(substring、concat、length)
截取字符串substring()函数
select substring('abc123',3)
,substring('abc123',-2);
substring()函数接受两个参数
第一个参数为待截取字符串,第二个为截取的起始位置,之后的都取出来。
若第二个为负数,代表从字符串最后边开始数,即负数的绝对值个位置后边都取了。或者是取 -2 -1两个位置的数
substring()函数接受三个参数
第一个为待截取字符串,第二个为截取的起始位置,第三个为截取的长度。
若第二个为负数,代表从字符串最后边负数绝对值位置开始取
select substring('abc123',3,2)
,substring('abc123',-4,3);
- 订单表,order是精确到秒的字符串格式的时间,接下来需要查询并获取每个订单的“年”,“月”,“日”,及衍生出三个字段
创建订单表
drop table if exists order_detail;
create table order_detail(
order_id varchar(8),
order_time varchar(32)
)
ENGINE=InnoDB
DEFAULT CHARSET=utf8;
insert into
order_detail(order_id ,order_time)
value('o001','2020-06-15 09:12:33')
,('o002','2020-06-15 13:24:09')
,('o003','2020-06-16 10:12:24')
,('o004','2020-06-17 08:12:52')
,('o005','2020-06-18 18:03:43');
select * from order_detail;
利用substring函数提取年月日
select *
,substring(order_time,1,4) as year
,substring(order_time,6,2) as month
,substring(order_time,9,2) as day
from order_detail;
- 时间/日期处理函数
- 数值处理函数(对数据进行计算并对数值结果的保留格式进行处理)