将Fullname分为姓氏和姓氏

时间:2016-01-03 00:57:29

标签: string oracle

我想在Oracle中将以下名称拆分为Surname和Forename。请注意,全名可以包含2,3,4或更多单词。姓氏是姓氏。所以基本上我想要右边的第一个单词作为姓氏,左边的剩余字符串是Forename。

示例:

  1. " Mary Edward Alex Tario" - 这里的姓氏应该是" Tario"和Forename应该是" Mary Edward Alex"。
  2. " John Travolta" - 这里的姓氏是"特拉沃尔塔"和Forename是" John"。

1 个答案:

答案 0 :(得分:1)

虽然您可以使用regexp_substr()执行此操作,但基本字符串函数可能更简单:

select substr(name, 1, length(name) - instr(reverse(name), ' ')) as firstname,
       substr(name, length(name) - instr(reverse(name), ' ') + 1) as lastname