sql MySQL:从完整的“名称”字段中提取姓氏和名字(对于Elgg)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql MySQL:从完整的“名称”字段中提取姓氏和名字(对于Elgg)相关的知识,希望对你有一定的参考价值。

SELECT 
  -- Assumed to be trimmed
  name
  
  -- Does name contain multiple words?
  ,(LOCATE(' ', name) = 0) AS hasMultipleWords

  -- Returns the end of the string back until reaches a space. 
  --   E.g. "John Doe" => "Doe"
  --   E.g. "Francis Scott Key" => "Key"
  --   E.g. "Prince" => "Prince"
  ,REVERSE(SUBSTRING_INDEX(REVERSE(name), ' ', 1)) AS lastName

  -- Everything not included in the last name.
  --   E.g. "John Doe" => "John"
  --   E.g. "Francis Scott Key" => "Francis Scott"
  --   E.g. "Prince" => ""
  ,TRIM(SUBSTRING(name, 1, CHAR_LENGTH(name) - CHAR_LENGTH(SUBSTRING_INDEX(REVERSE(name), ' ', 1)))) AS firstNames

FROM `elgg_users_entity`
LIMIT 100

以上是关于sql MySQL:从完整的“名称”字段中提取姓氏和名字(对于Elgg)的主要内容,如果未能解决你的问题,请参考以下文章

从 SQL 结果中过滤大数组

协助从可能有逗号的列中选择 SQL Case 语句

从 SQL Server 中的名称字符串中获取中间名和名字

PHP 如何从mysql 一个字段中提取内容并过滤所有HTML代码,然後存入另一个字段内?

mysql数据库学习--SQL语句关键字以及常用函数

如何在 Mailchimp 中仅获取成员字段名称(电子邮件地址、名字、姓氏)