В следующем примере используется дополнительный поиск, но он удовлетворяет вашим требованиям.Я не знаю точно, является ли это более эффективным, чем использование временной таблицы, хотя, если UPIN проиндексирован, то я подозреваю, что это будет.
IF EXISTS(
SELECT
1
FROM
Users u
WHERE
u.UPIN = @AttendingDoctorID)
BEGIN
SELECT
u.UserId, 1
FROM
Users u WITH(nolock)
WHERE
u.UPIN = @AttendingDoctorID
END ELSE BEGIN
SELECT
u.UserId,
1
FROM
Users u (nolock)
WHERE
u.FirstName = @AttendingDoctorFirstName AND
u.LastName = @AttendingDoctorLastName
END