Я пытаюсь понять, как объединить несколько имен, таких как имена и девичьи имена (включая возможные префиксы), как полное имя без двойного интервала, используя тире только тогда, когда необходимо (при наличии двух имен).SQL concat несколько имен и добавить тире в случае двух имен
Например:
- когда человек имеет и фамилию и фамилию, я хочу, чтобы выглядеть, как
'A. van Dijk - Turner'
(обратите внимание на дефис, «ван де» являются префиксы) - Когда у человека есть только последнее или девичье имя, я хочу, чтобы он выглядел как
'A van Dijk'
.
В следующем примере кода, безусловно, не является достаточным:
concat (initals, ' ',prefixlastname,' ', lastname, ' - ', prefixmaidenname ', maidenname) AS 'full name'
Если человек имеет только имя Maiden, код, указанный выше результатов, например, «A-van Dijk».
Какое наиболее эффективное решение? Заранее большое спасибо.
Какую базу данных вы используете? –
Я использую SQL-сервер 12.0.2 – ralph