Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 从一个表中获取值并使用该值查询另一个表_Sql_Sql Server 2005_Tsql_Stored Procedures - Fatal编程技术网

Sql 从一个表中获取值并使用该值查询另一个表

Sql 从一个表中获取值并使用该值查询另一个表,sql,sql-server-2005,tsql,stored-procedures,Sql,Sql Server 2005,Tsql,Stored Procedures,我有以下表格: TableA --------------- ParamA ¦ ParamB --------------- 695 ¦ Test TableB --------------- ParamA ¦ ParamC --------------- 695 ¦ Test2 因此,我试图创建一个存储过程,该过程将从TableA中选择ParamA,其中ParamB=@ParamB和在tableab中更新ParamC='NULL',其中ParamA=ParamA FROM T

我有以下表格:

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

TableB
---------------
ParamA ¦ ParamC
---------------
  695  ¦ Test2
因此,我试图创建一个存储过程,该过程将
从TableA中选择ParamA,其中ParamB=@ParamB
tableab中更新ParamC='NULL'
,其中ParamA=ParamA FROM TableA

到目前为止,我得到的是:

UPDATE ClassDetails
SET ValidTo = 'NULL'
WHERE Class = Classes.ClassId AND Classes.ClassName = @ClassName;
我知道以上是错误的,但这是我的逻辑关于它


有什么想法吗?

很难理解你的推理,但如果我理解你的意思是正确的,下面的更新将适合你的需要

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

来自

指定一个表用于 提供更新的标准 手术


完美正是我想要的!