我正在尝试提取大写和小写的单词。 例如,在具有名字和姓氏值的单列(Full_name)中,我需要将它们分隔为名字和姓氏,名字总是以大写字母开头,而姓氏总是以大写字母表示所有字母。
Full_Name:
---------
abc ABC
pqr RTF
现在我需要将它们分成2个不同的列,如下所示
First_name Last_name
--------- --------
abc ABC
pqr RTF
非常感谢您提前投入。
答案 0 :(得分:0)
SELECT LEFT(Full_Name,LOCATE(' ',Full_Name)) AS First_name,
SUBSTRING(Full_Name,LOCATE(' ',Full_Name)) AS Last_name
FROM TABLE_NAME
答案 1 :(得分:0)
MySQL中最简单的方法是使用substring_index()
:
select substring_index(full_name, ' ', 1) as First_Name,
substring_index(full_name, ' ', -1) as Last_Name
from table t;
编辑:
我错过了多个部分的名字。
select substring_index(full_name, ' ', 1) as First_Name,
trim(substring(full_name,
length(substring_index(full_name, ' ', 1))
)
) as Last_Name
from table t;