【问题标题】:MYSQL How to get the last second word from StringMYSQL如何从String中获取最后第二个单词
【发布时间】:2021-03-03 09:41:46
【问题描述】:

我正在尝试按 FirstnameMiddleNameLastName 拆分字符串,但在获取 MiddleName 时遇到问题。这是我的查询:

select
  SUBSTRING_INDEX(admin, ' ', 1) as 'FirstName',
  SUBSTRING_INDEX(admin, ' ', +1) as 'MiddleName',
  SUBSTRING_INDEX(admin, ' ', -1) as 'LastName'
FROM fullname

我的桌子 |编号 |全名 | | -- | ----------------------| | 1 |金保罗 D. Ercillo | | 2 |列维·T·马尔克斯 | | 3 |布赖恩·W·斯迈利 |

期望的输出
|名字|中间名|姓氏 | |-----------| ---------- |-------------| |金 | D |埃尔西洛 | |李维 | T |马尔克斯 | |布赖恩 | W |笑脸|

我得到的结果
|名字|中间名|姓氏 | |------------|------------|-------------| |金 |金 |埃尔西洛 | |李维 |李维 |马尔克斯 | |布赖恩 |布赖恩 |笑脸|

【问题讨论】:

    标签: mysql


    【解决方案1】:
    select
      SUBSTRING_INDEX(admin, ' ', 1) as 'FirstName',
      TRIM(TRAILING '.' FROM SUBSTRING_INDEX(SUBSTRING_INDEX(admin, ' ', -2), ' ', 1)) as 'MiddleName',
      SUBSTRING_INDEX(admin, ' ', -1) as 'LastName'
    FROM
      fullname
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-30
      • 1970-01-01
      • 2021-12-27
      相关资源
      最近更新 更多