Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

SQL Server chia CSV thành nhiều hàng

from
    #client_profile_temp cpt
    cross apply dbo.split(
    #client_profile_temp.interests, ',') as split  <--Error is on this line

Tôi nghĩ rằng việc đặt tên rõ ràng cho #client_profile_temp sau khi bạn đặt bí danh là một vấn đề, hãy thử đặt dòng cuối cùng đó:

    cpt.interests, ',') as split  <--Error is on this line

CHỈNH SỬA Bạn nói

Tôi đã thực hiện thay đổi này và nó không thay đổi bất cứ điều gì

Thử dán mã bên dưới (vào cửa sổ SSMS mới)

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 

Xem nếu nó hoạt động như bạn mong đợi; Tôi đang sử dụng sql server 2008 và điều đó giúp tôi có được loại kết quả mà tôi nghĩ bạn muốn.

Bất kỳ cơ hội nào khi bạn nói "Tôi đã thực hiện thay đổi", bạn vừa thay đổi một thủ tục đã lưu trữ nhưng chưa chạy nó hoặc thay đổi một tập lệnh tạo ra một thủ tục được lưu trữ và chưa chạy nó, một cái gì đó dọc theo những dòng đó? Như tôi đã nói, nó có vẻ hiệu quả với tôi.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để gọi Thủ tục đã lưu trong Chế độ xem?

  2. Làm cách nào để tạo khóa ngoại trong SQL Server?

  3. Cách thực hiện liên kết bên trong trên số hàng trong máy chủ sql

  4. t-sql chọn nhận tất cả các Tháng trong một phạm vi năm

  5. SQL Server 2016:Trình thiết kế truy vấn