from
#client_profile_temp cpt
cross apply dbo.split(
#client_profile_temp.interests, ',') as split <--Error is on this line
Myslím, že explicitní pojmenování #client_profile_temp poté, co jste mu dali alias, je problém, zkuste udělat ten poslední řádek:
cpt.interests, ',') as split <--Error is on this line
UPRAVIT Říkáte
Provedl jsem tuto změnu a nic se nezměnilo
Zkuste vložit níže uvedený kód (do nového okna 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
Podívejte se, zda to funguje, jak očekáváte; Používám sql server 2008 a funguje to pro mě, abych získal takové výsledky, jaké si myslím, že chcete.
Je nějaká šance, že když řeknete „Udělal jsem změnu“, právě jste změnili uloženou proceduru, ale nespustili jste ji, nebo jste změnili skript, který vytváří uloženou proceduru, a nespustili jste to, něco v tomto smyslu? Jak říkám, zdá se, že mi to funguje.