Mysql 获取第一个名称,但它只有第一个名称,没有第二个名称

Mysql 获取第一个名称,但它只有第一个名称,没有第二个名称,mysql,sql,database,Mysql,Sql,Database,我试着从列名中获取名字,但是有几个名字只有名字而没有姓,例如 john sebastian -> first name and family name kevin-> only has first name 我试着把它和'@bj.com'结合起来 因此,输出将是: 姓名:约翰·塞巴斯蒂安 输出:john@bj.com 姓名:凯文 输出:kevin@bj.com 什么是sql查询 我正在使用mysql,谢谢你试试这个 select if(instr(col,' ')>0,le

我试着从列名中获取名字,但是有几个名字只有名字而没有姓,例如

john sebastian -> first name and family name

kevin-> only has first name
我试着把它和'@bj.com'结合起来

因此,输出将是:

姓名:约翰·塞巴斯蒂安 输出:john@bj.com

姓名:凯文 输出:kevin@bj.com 什么是
sql查询

我正在使用mysql,谢谢你试试这个

select if(instr(col,' ')>0,left(col,instr(col,' ')-1),col) as Firstname from tablename
试一试

它会以你想要的方式给你结果

您可以这样做:

SELECT Name FROM Users WHERE (Name NOT LIKE '% %')
享受你的代码

编辑:

SELECT  CONCAT(IF( (INSTR(name, ' ')>1) , LEFT(name,INSTR(name, ' ')-1), name), '@bj.com') AS Firstname FROM Users;

请提供示例数据和预期输出,保存全名是一种不好的做法。尝试分别存储姓氏和名字。不,这不行,因为我试图提取姓氏并将其与'@bj.com'组合
SELECT  CONCAT(IF( (INSTR(name, ' ')>1) , LEFT(name,INSTR(name, ' ')-1), name), '@bj.com') AS Firstname FROM Users;