如何在MySQL中将姓氏和名字分隔成两个新列?

| 如何将姓氏和名字分成新的列? 我在一栏中有“ John&Anna Smith”,我需要在两栏中将其分为“ John&Anna \”和“ Smith”。我该怎么做呢? 当我们从左边走时,没有定界符。当我们从右边走时,定界符是空格。最后的子字符串始终是“姓氏”。其余的是名字。 例如: \“ John Smith \”-> \“ John \”在第1列中,并且\“ Smith \”在第2列中 \“ John&Anna Smith \” ---> \“ John&Anna \”在第1列中,并且“ Smith \”在第2列中     
已邀请:
嘿,你可以尝试这样的事情
SELECT REPLACE(\'John & Anna Smith\', SUBSTRING_INDEX(\'John & Anna Smith\', \' \', -1),\'\') AS first_name, SUBSTRING_INDEX(\'John & Anna Smith\', \' \', -1) AS last_name;
    
  例如:   \“ John Smith \”-> \“ John \”在第1列中,并且\“ Smith \”在第2列中   \“ John&Anna Smith \” ---> \“ John&Anna \”在第1列中,并且“ Smith \”在第2列中 您将必须提出规则或规则集(以涵盖其他可能性),以便能够删除名称。一种方法是将规则保留在config / xml / table中,以便您可以在其中添加规则,即使遇到其他类型的分隔符/分隔符或条件也是如此。 您可以从查找名称的最后一个空格开始。例如,在上面的示例中,您正在用字符串的最后一个空格分割文本。     

要回复问题请先登录注册