Pav*_*avi 9 sql-server subquery multiple-tables sql-update
我有两张桌子
我想根据学校代码和年份使用学校代码表中的school_id列更新学生表中的school_code列.我有五年的数据.所以school_id每年都有所不同.
我的疑问是
UPDATE Master.Student
SET school_code=( select school_id from Master.school as sc
JOIN master.student as st
ON st.school_code=sc.school_code
WHERE sc.year=x)
WHERE st.year=x;
Run Code Online (Sandbox Code Playgroud)
但它没有更新.我收到了错误subquery returns more than one value.
him*_*056 17
为什么要在直接执行此操作时使用子查询?
UPDATE st
SET st.school_code = sc.school_id
FROM master.student AS st
JOIN Master.school AS sc
ON st.school_code = sc.school_code
WHERE sc.year=x
AND st.year=x;
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅UPDATE(Transact-SQL)