1.substring_index函数的语法及其用法
(1)语法:substring_index(string,sep,num)
(2)用于截取目标字符串。
2.实例
(1)从某字段截取目标字符串。
(2)与cast函数结合使用截取字符串并转换为目标格式。
1.substring_index函数的语法及其用法
(1)语法:substring_index(string,sep,num)
参数说明
string:用于截取目标字符串的字符串。可为字段,表达式等。
sep:分隔符,string存在并用于分割的字符,如.”等。
num:序号,非0整数。若为整数则表示从左到右,若为负数则表示从右到左。比如“www.mysql.com截取字符www分割符为.从左到右的序号为1,即substring_index(“www.mysql.com”,‘.1);如果从右开始获得com序号为-1substring_index(“www.mysql.com”,‘.’,-1)
(2)用于截取目标字符串。
2.实例
(1)从某个字段截取目标字符串。
例:现有学生信息表student,详细地址address存储由逗号隔开的省、市、县等地址信息,如XX省,XX市,XX区,…,XXX号码。由于某种原因,学生所在省的信息不需要获取,学生的姓名也需要获取。name,性别sex,年龄age。
select name,sex,age, substring_index(address,',',1) as province from student
(2)与cast函数结合使用截取字符串并转换为目标格式。
例:现有订单信息data,由于2022-03-04日期 之后,存储日期信息的格式出现错误。日期前添加一些前缀,并用空间隔开,如13d 2022-02-01年,表格2022-03-04年后需要获取具体日期信息offer_id,以及产品名name。
select cast(substring_index(ctime,' ',1) as date) as dt, offer_id,name FROM data WHERE substring_index(ctime,' ',1)>= '2022-03-04'
SQL的cast可参考函数用法SQL的CAST()-转换数据类型_的博客-CSDN博客