Сращивание фамилий с инфиксами - PullRequest
0 голосов
/ 01 мая 2019

У меня есть пользователи, у которых есть инфиксы в их фамилии, такие как Es, Van Zaal и Van der Dijk.

Я пытаюсь получить фамилии в трех столбцах. lastname, without_infix, infix

Использование

IF(lastname = SUBSTRING_INDEX(lastname, ' ', -1), NULL, SUBSTRING_INDEX(lastname, ' ', -1))

Мне удастся правильно получить оба Es, Van Zaal. Однако при этом я не получаю der от Van der Dijk.

Пример: * ** 1022 тысячу двадцать одна * Если у меня есть фамилии Es, Van Zaal и Van der Dijk

Результат должен быть example result

Как мне получить этот результат?

1 Ответ

2 голосов
/ 01 мая 2019

Это то, что вы хотите?

select lastname,
       substring_index(lastname, ' ', -1) as without_prefix,
       left(lastname, length(lastname) - length(substring_index(lastname, ' ', -1))) as prefix

Здесь - это дб <> скрипка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...