СЛУЧАЙ, КОГДА ТОГДА ЕЩЕ ИЗМЕНИТСЯ на объединение?

Мне было интересно, если это можно изменить CASE when then else к union allили что-то в этом роде.

Я надеюсь, что это возможно...

пример

CASE WHEN(C.Salutation = 'Dhr.' OR C.salutation = 'dhr.')
         THEN 'Meneer'+' '+ISNULL(C.middlename+' ','')+C.Lastname
    WHEN(C.Salutation = 'Mw.' OR C.salutation = 'mw.')
         THEN 'Mevrouw'+' '+ISNULL(C.middlename+' ','')+C.Lastname
    ELSE 'Meneer/Mevrouw '+ISNULL(C.middlename+' ','')+ISNULL(C.Lastname,'') END AS 'K5'

Я надеюсь, что вы, ребята, можете помочь мне..

1 ответ

Решение

Ну да можно, но некрасиво

SELECT 'Meneer'+' '+ISNULL(C1.middlename+' ','')+C1.Lastname AS 'K5'
FROM table C1
WHERE C1.Salutation = 'Dhr.' OR C1.salutation = 'dhr.'
UNION
SELECT 'Mevrouw'+' '+ISNULL(C2.middlename+' ','')+C2.Lastname
FROM table C2
WHERE C2.Salutation = 'Mw.' OR C2.salutation = 'mw.'
UNION
SELECT 'Meneer/Mevrouw '+ISNULL(C.middlename+' ','')+ISNULL(C.Lastname,'')
FROM table C3
WHERE C3.Salutation != 'Mw.' AND C3.salutation != 'mw.'
AND C3.Salutation != 'Dhr.' AND C3.salutation != 'dhr.'
Другие вопросы по тегам