Условное редактирование вывода в запросе SQL
Я пытаюсь извлечь данные из столбца в таблице, которую я назвал Vendors, и имя столбца VendorContactLName. У меня также есть столбец VendorContactFName. Я пытаюсь сделать так, чтобы при извлечении данных он условно изменял вывод строки.
Например, я хочу добавить апостроф в конец имени, которое я могу сделать:
SELECT VendorContactFName + ' ' + VendorContactLName + '''s' AS 'Vendor Full Name' FROM Vendors;
Однако я хотел бы сделать так, чтобы, если так получилось, что фамилия в VendorContactLName уже оканчивается на "s", я присоединяю к нему только апостроф, а не апостроф и "s".
Итак, я бы хотел, чтобы Карл Аллен, Майкл Данлэп и Мишель Хиггинс выступили в роли Карла Аллена, Майкла Данлэпа и Мишель Хиггинс.
Спасибо за помощь.
1 ответ
Решение
Проверь это:
SELECT VendorContactFName + ' ' +
(case right(VendorContactLName,1)
when 's' then VendorContactLName + ''''
else VendorContactLName + '''s'
end) as 'Vendor Full Name'
FROM Vendors