J'ai la fonction définie par l'utilisateur suivante :
create function [dbo].[FullNameLastFirst]
(
@IsPerson bit,
@LastName nvarchar(100),
@FirstName nvarchar(100)
)
returns nvarchar(201)
as
begin
declare @Result nvarchar(201)
set @Result = (case when @IsPerson = 0 then @LastName else case when @FirstName = '' then @LastName else (@LastName + ' ' + @FirstName) end end)
return @Result
end
Je ne peux pas créer un index sur une colonne calculée en utilisant cette fonction car ce n'est pas déterministe. Quelqu'un pourrait expliquer pourquoi il n'est pas déterministe et finalement comment le modifier pour le rendre déterministe ? Merci