如何在mysql查询中获得第一个空格后的所有单词

时间:2017-11-30 12:40:33

标签: mysql

我有一个表,其行的名称内容如下:

Name
------------------------
NIWEMUKIZA GRACE
NIYIRORA MARY REINE
Muganga jean ema samuel

我想在第一个空白区域之前只得到单词部分,在第一个空格之后只得到其余的单词。

输出:

Lastname     |   Firstname
-------------+-------------
NIWEMUKIZA   |    GRACE
NIYIRORA     |    MARY REINE
Muganga      |    jean ema samuel

1 个答案:

答案 0 :(得分:2)

您可以使用SUBSTRINGLOCATESUBSTRING_INDEX中的任意一个(或两者)。它们都在下面使用:

SELECT
  SUBSTRING_INDEX(`name`, ' ', 1) AS `first_name`,
  SUBSTRING(`name`, LOCATE(' ', `name`)) AS `last_name`
FROM
  `names`

给我们:

first_name | last_name
----------------------
NIWEMUKIZA | GRACE
NIYIRORA   | MARY REINE
Muganga    | jean ema samuel

SQLFiddle:http://sqlfiddle.com/#!9/92e94e/5