设置值列,其中id在另一个表中

时间:2017-12-02 10:55:53

标签: sql sql-server

我正在尝试修改我的另一个表的id的表,即另一个表是另一个列,只有当该列的数据为2时,取该列的ID并使用我想改变,例如:

UPDATE QuestData SET RepeatFinish = 100000
WHERE QuestID =
(
    SELECT * FROM Quest WHERE QuestID = 2
);

但是QuestData也拥有如此多的数据和表格Quest,我怎么能做到这一点?

1 个答案:

答案 0 :(得分:1)

UPDATE QuestData SET RepeatFinish = 100000
WHERE QuestID in
(
    SELECT id FROM Quest WHERE QuestID = 2
);

更改您选择的 ID 。当使用in和其他请求时,select必须返回一个将在IN中使用的字段,你正在使用*所以我们不知道我们应该比较什么QuestID