У меня есть следующий запрос, который работает и выполняет то, что должен:
select
SUBSTRING(LastName,2,1)
+SUBSTRING(LastName,3,1)
+SUBSTRING(LastName,5,1)
+SUBSTRING(FirstName,2,1)
+SUBSTRING(FirstName,3,1)
+replace(convert(varchar, DateOfBirth,101),'/','')
+CASE WHEN GenderID = '1' Then '1' WHEN GenderID = '2' Then '2' ELSE '9' END
from
Client
Однако, если какой-либо из SUBSTRINGS возвращает пустую строку, его необходимо заменить на 2. Например, если LastNameБонд, SUBSTRING (LastName, 5,1) должен вернуть 2.
Как кто-то может предположить, что это сделано?Я пытался избежать чего-то вроде этого:
select CASE WHEN SUBSTRING('James',5,1) = '' THEN '2' ELSE SUBSTRING('James',5,1) END