Actualizar campo con el resultado de una funcion escalar

tema enviado por scholastic en SQL Server
tema iniciado el 18/05/2009
¿Por qué funciona select dbo.funcionEscalar(@clavePrimaria) from tabla pero no update tabla set campo = dbo.funcionEscalar(@clavePrimaria) where clavePrimaria = @clavePrimaria ??