我有一个列表,其中一个变量是 Player,如果有一个玩家的名字,然后是一个“_”,还有一个姓氏,如下所示:
Mike_Gonzalez
我想从玩家变量中创建两个新变量。第一个变量是 firstName,所以我想要“”左侧的所有字符。第二个变量是 lastName,它是“”右边的所有字符。
我试过使用 LEFT(Player, LOCATE('_', Player)),但是当我这样做时,新变量包含 _。
我怎样才能运行代码,使我能够在没有 _ 的情况下获得名字和姓氏?
感谢您的帮助。
最佳答案
除了将 LEFT()
和 RIGHT()
与 LOCATE()
结合使用外,您还可以使用 SUBSTRING_INDEX()
:
SELECT
SUBSTRING_INDEX(Player, '_', 1) AS FirstName
, SUBSTRING_INDEX(Player, '_', -1) AS LastName
关于mysql - 仅从 mySQL 中的特定字符的左侧和右侧获取字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7856754/