Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

SQL Server dividiu CSV em várias linhas

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.