Is there any easy way to return single scalar or default value if query doesn\'t return any row?
At this moment I have something like this code example:
I would suggest that the best way to do is that first declare @name . Then set this value based on user id and then if @name is null show default name otherwise show name... That method would be as efficient as any other method and will be more readable.for other methods any other user to have think a lot to know what is going on unless there is nice comment.
declare @userid int
set @userid = 1
select isnull(
(select name from users where id = @userid),
'John Doe'
)
go
--My preffered would be this one..
declare @name varchar(20),@userid int
set @userid = 1
select @name = name from users where id = @userid
select isnull(@name,'John Doe')