2011-04-11 89 views
1

我有以下表格:从一个表中获得价值,并与值查询另一

TableA 
--------------- 
ParamA ¦ ParamB 
--------------- 
    695 ¦ Test 

TableB 
--------------- 
ParamA ¦ ParamC 
--------------- 
    695 ¦ Test2 

所以我想创建一个存储过程,将SELECT ParamA FROM TableA WHERE ParamB = @ParamBUPDATE ParamC = 'NULL'TableB WHERE ParamA = ParamA FROM TableA

我有什么到目前为止,这是:

UPDATE ClassDetails 
SET ValidTo = 'NULL' 
WHERE Class = Classes.ClassId AND Classes.ClassName = @ClassName; 

我知道上面是错误的,但就是我把它的逻辑......

有何想法?

回答

2

这是很难遵循你的推理,但如果我没有了解你的正确,下面的更新将适合您的需求。

UPDATE b 
SET ParamC = NULL 
FROM TableB b 
     INNER JOIN TableA a ON a.ParamA = b.ParamA 
WHERE a.ParamB = @ParamB 

语法UPDATE FROM

FROM < table_source>

指定一个表用于 提供用于更新 操作的标准。

+0

完美就是我过的! – 2011-04-11 11:30:26

相关问题