from
#client_profile_temp cpt
cross apply dbo.split(
#client_profile_temp.interests, ',') as split <--Error is on this line
Acho que a nomenclatura explícita de #client_profile_temp depois que você deu um alias é um problema, tente fazer essa última linha:
cpt.interests, ',') as split <--Error is on this line
EDITAR Você diz
fiz essa alteração e não mudou nada
Tente colar o código abaixo (em uma nova janela do SSMS)
create table #client_profile_temp
(id int,
interests varchar(500))
insert into #client_profile_temp
values
(5, 'Vodka,Potassium,Trigo'),
(6, 'Mazda,Boeing,Alcoa')
select
cpt.id
,split.data
from
#client_profile_temp cpt
cross apply dbo.split(cpt.interests, ',') as split
Veja se funciona como você espera; Estou usando o sql server 2008 e isso funciona para mim para obter o tipo de resultado que acho que você deseja.
Alguma chance de quando você diz "eu fiz a alteração", você acabou de alterar um procedimento armazenado, mas não o executou, ou alterou um script que cria um procedimento armazenado e não executou isso, algo nesse sentido? Como eu disse, parece funcionar para mim.