簡體   English   中英

如何在sql中更新單個列中的多個逗號分隔值

[英]How to update multiple comma seperated values in a single column in sql

關於 SQL 的問題

假設有一張桌子。

我無法使用您提供的信息重現您的語法錯誤,因此我懷疑您在某處輸入錯誤。

但是,請參閱評論 - 這是存儲數據的錯誤方式。 也許這些代碼片段會有所幫助。

您需要一個包含團隊的表和一個包含人員的表。 然后,您需要一個單獨的表將兩者鏈接在一起。

create table #Teams (TeamId int identity(1,1), TeamName nvarchar(50));
create table #Members (MemberId int identity(1,1), MemberName nvarchar(50));
create table #TeamMembers (MemberId int, TeamId int);

例如

-- create your team first
insert into #Teams (TeamName) values ('Warriors');

-- create your people next
insert into #Members (MemberName) values
('John'),('Alexa'),('Tony');

-- Now (and only now) link members to teams
insert into #TeamMembers (MemberId, TeamId) values
(1, 1),(2,1),(3,1)

要讓您的所有數據一起報告,請從這些連接開始

select t.TeamName, m.MemberName
from #Teams t
join #TeamMembers tm on t.TeamId = tm.TeamId
join #Members m on tm.MemberId = m.MemberId;

您可能需要自己研究以下內容:

  • 一對多,多對多關系
  • 數據庫規范化
  • 如果你真的想要一個逗號分隔的列表,那么“sql 生成逗號分隔列表”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM