MySQL数据库,字符串字段拆分
英文姓名存储在一个字段
如何拆分出firstname和lastname
查询语句
SELECT REPLACE(name, CONCAT(' ', SUBSTRING_INDEX(name, ' ', -1)), '') AS firstname, SUBSTRING_INDEX(name, ' ', -1) AS lastname
FROM people;
SUBSTRING_INDEX语法
(1)substring_index(string, sep, num),即substring_index(字符串, 分隔符, 序号)
(2)参数说明
- string:用于截取目标字符串的字符串。可为字段,表达式等。
- sep:分隔符,string存在且用于分割的字符,比如“,”、“.”、“ ”等。
- num:序号,为非0整数。若为整数则表示从左到右数,若为负数则从右到左数。比如“www.mysql.com”截取字符‘www’,分割符为“.”,从左到右序号为1,即substring_index("www.mysql.com", '.', 1)。若从右开始获取“com”则为序号为-1,即substring_index("www.mysql.com", '.', -1)。