2011-10-12 68 views
4

我有两个表:SQL代码更新表

Master Table  Assets Table 
-AssetNo-   -AssetNo- 

AssetNo是PK,这是一个外键两个表链接。现在,我想用更新:

UPDATE Assets 
    SET status = 1 
    FROM Assets, Master 
WHERE Assets.AssetNo = Master.AssetNo 

如果我用这个命令,所有资产与同assetno将自动更新为1

如何具体assetNo IE代码:WHERE 111(from Assets)=111(from Master)

+4

的语法多表更新因数据库产品而异。你在使用什么SQL产品? –

+0

谢谢all.problems解决 – GreenCat

回答

4

如果我正确理解你的问题,我想你只需要另外一个条件在WHERE子句:

UPDATE Assets 
    SET status = 1 
    FROM Assets, Master 
WHERE Assets.AssetNo = Master.AssetNo 
    AND Assets.AssetNo = 111 
1

你使用的是什么sql引擎?像这样的东西会为SQL Server的工作:

Update a 
SET Status = 1 
FROM Assets a 
JOIN Master m on a.AssetNo = m.AssetNo 
WHERE a.AssetNo = 111 
1
UPDATE Assets SET status = 1 
FROM Assets a JOIN Master m ON a.AssetNo = m.AssetNo 
WHERE a.AssetNo = 999 
1
UPDATE a 
SET a.Status = 1 
FROM Assets AS a 
INNER JOIN Master AS m ON a.AssetNo = m.AssetNo 
WHERE m.AssetNo = @value 
+0

如何增加值雅..我有这个Request.Form(“AssetNo”)。 – GreenCat

+0

你使用哪种语言与数据库交谈?你使用的是什么版本的SQL? –

+0

ASP经典和SQL服务器2000 – GreenCat