首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何更新行

如何更新行
EN

Stack Overflow用户
提问于 2011-02-10 15:23:04
回答 3查看 195关注 0票数 1

我有一张这样的桌子:

代码语言:javascript
复制
ID    Model     Value
DAX   FAB01     
DAZ   FAB01
DAA   FAB01
DAX   FAB02     
DAZ   FAB02
DAA   FAB02

我需要更新表,以便最终输出将如下所示:

代码语言:javascript
复制
ID    Model     Value
DAX   FAB01     123
DAZ   FAB01     789  
DAA   FAB01     963
DAX   FAB02     456
DAZ   FAB02     951
DAA   FAB02     753

我尝试了下面的方法:

代码语言:javascript
复制
UPDATE [TABLE]
SET VALUE = CASE
              WHEN MODEL='FAB01' AND ID='DAX' THEN '123'
              WHEN MODEL='FAB01' AND ID='DAZ' THEN '789'
              WHEN MODEL='FAB01' AND ID='DAA' THEN '963'
              WHEN MODEL='FAB02' AND ID='DAX' THEN '456'
              WHEN MODEL='FAB02' AND ID='DAX' THEN '951'
              WHEN MODEL='FAB02' AND ID='DAX' THEN '753'
              ELSE VALUE
            END

重新运行上面的命令&它现在可以工作了。

谢谢。

EN

回答 3

Stack Overflow用户

发布于 2011-02-10 15:26:51

代码语言:javascript
复制
   UPDATE [TABLENAME]
   SET VALUE = 123

   WHERE ID = "DAX" AND MODEL = "FAB01"

每行的Etc..repeat

票数 3
EN

Stack Overflow用户

发布于 2011-02-10 15:31:03

从禁令的答案延伸出来。更新应该是-

代码语言:javascript
复制
UPDATE [TABLENAME]
SET [VALUE] = 123
WHERE ID = 'DAX'
AND Model = 'FAB01'

表中的两列(ID和Model)具有唯一性。

票数 2
EN

Stack Overflow用户

发布于 2011-02-10 15:32:02

所有语句:

代码语言:javascript
复制
UPDATE YourTableName SET [Value] = 123 WHERE [ID] = 'DAX' AND [model] = 'FAB01'
GO

UPDATE YourTableName SET [Value] = 789 WHERE [ID] = 'DAZ' AND [model] = 'FAB01'
GO

UPDATE YourTableName SET [Value] = 963 WHERE [ID] = 'DAA' AND [model] = 'FAB01'
GO

UPDATE YourTableName SET [Value] = 456 WHERE [ID] = 'DAX' AND [model] = 'FAB02'     
GO

UPDATE YourTableName SET [Value] = 951 WHERE [ID] = 'DAZ' AND [model] = 'FAB02'
GO

UPDATE YourTableName SET [Value] = 753 WHERE [ID] = 'DAA' AND [model] = 'FAB02'
GO
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4954432

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档