更新MS SQL中的一个特定单元格

更新MS SQL中的一个特定单元格,sql,sql-server,sql-update,Sql,Sql Server,Sql Update,我有这样的桌子 Name Answer A ------- Y B ------- N C ------ N D ------ Y E ------ Y 我的问题是我只想更新有“Y”的单元格,而不是更新整个答案列。我试过的是 UPDATE TABLE1 SET Answer = 'N' WHERE userID=1; 这会更新所有答案,我只想更新“Y”试试这个,你可以在答案栏上添加过滤器,并使用你的过滤器值 UPDATE TABLE1 S

我有这样的桌子

Name      Answer
 A -------  Y
 B -------  N
 C  ------  N
 D  ------  Y
 E  ------  Y
我的问题是我只想更新有“Y”的单元格,而不是更新整个答案列。我试过的是

UPDATE TABLE1
        SET Answer = 'N' 
WHERE userID=1;

这会更新所有答案,我只想更新“Y”

试试这个,你可以在答案栏上添加过滤器,并使用你的过滤器值

UPDATE TABLE1 SET Answer = 'N' WHERE Answer = 'Y' 

尝试此操作,您可以使用您的筛选值在“回答”列上添加筛选

UPDATE TABLE1 SET Answer = 'N' WHERE Answer = 'Y' 
做:

做:


我想这就是你的意思?是否要更新“用户1”回答“Y”的所有答案


更新表1设置答案='N',其中userID=1,答案='Y'

我想这就是你的意思?是否要更新“用户1”回答“Y”的所有答案


更新表1设置答案='N',其中userID=1,答案='Y'

试试这个..我不确定在不创建新表的情况下是否可以这样做..我想应该是可能的

 select * into Table2 from Table1
 UPDATE TABLE2 SET Answer = case when userID=1 then 'N' else Answer end
 from table1 as a inner join table  table2 as b on a.name=b.name

试试这个…我不确定在不创建新表的情况下是否可以这样做…我想应该是可能的

 select * into Table2 from Table1
 UPDATE TABLE2 SET Answer = case when userID=1 then 'N' else Answer end
 from table1 as a inner join table  table2 as b on a.name=b.name

如果答案对你有帮助,请将其标记为已接受。如果答案对你有帮助,请将其标记为已接受。