我有两个表会话和类通过 sessionid 将课程与会话相关联 我想将类名复制到具有新 classid 的相同类表中,并使用新的外键(会话表中为2)。
类的表名
sessionid classid class
1 1 5th
1 2 6th
1 3 7th
,会话表是
sessionid session
1 2013-2014
2 2014-2015
想要复制到2014-2015会议
希望你理解
Insert Into classes (sessionid,classname) Values ((select sessionid from session where session=@session),classname)
这就是我的反应。
答案 0 :(得分:1)
尝试这样的事情
Insert Into classes (sessionid,classname)
Values (SELECT 2, classname
FROM classes
WHERE sessionid = 1)
我没有对此进行过测试,我相信我可能会发现一些问题,所以如果有人发现我的代码存在问题,请发表评论,我会修复它。
<强>更新强>
我可能更改了列名称,因此如果你所做的只是复制和粘贴,你的列名可能没有匹配。和@ Fauzi88评论说我不需要在查询中使用VALUES
。
希望这有助于
我运行了以下查询,并在SQLFiddle
上执行INSERT INTO classes (sessionid,class)
SELECT 2, class
FROM classes
WHERE sessionid = 1
你可能想尝试这个而不是前一个
逻辑是一样的。