【发布时间】:2020-02-24 13:01:41
【问题描述】:
我是 SQL Server 2017 中 JSON 结果的新手。我将 JSON 数组存储在表的一列中。我将 id 的数组保存在该表中,但我想从其他表中更新它的相关文本,所以请帮助我。
create table #subjectList(subjectID int identity(1,1),subjectName varchar(50))
insert into #subjectList(subjectName)
select 'Math' union all
select 'English' union all
select 'Hindi' union all
select 'PC' union all
select 'Physics'
select * from #subjectList
Create table #studentList(studentID int identity(1,1), subjectName varchar(50), choseSubjectList varchar(max))
insert into #studentList(subjectName, choseSubjectList)
Select 'A','["1","2"]'
select * from #studentList
create table #studentWithSubject(studentID int,subjectName varchar(50),choseSubjectIDList varchar(max),choseSubjectNameList varchar(max))
insert into #studentWithSubject(studentID,subjectName,choseSubjectIDList)
Select a.studentID,a.studentID,a.choseSubjectList
from #studentList a
Update #studentWithSubject set choseSubjectNameList=''
select * from #studentWithSubject
这里是#studentWithSubject 输出
studentID subjectName choseSubjectIDList choseSubjectNameList
1 1 ["1","2"] ''
现在我想从#subjectList 更新主题名,输出应该是这样的:
studentID subjectName choseSubjectIDList choseSubjectNameList
1 1 ["1","2"] ["Math","English"]
【问题讨论】:
标签: sql json tsql sql-server-2017