提问人:Dom Vito 提问时间:12/10/2021 最后编辑:marc_sDom Vito 更新时间:12/10/2021 访问量:56
如何使用表外的所有行作为存储过程的参数?
How to use all rows from outside table as parameter for stored procedure?
问:
我想在存储过程中使用表中的所有行。我们将其称为 table2,或别名 b。
我目前的过程基本上是根据字段的 where 条件设置值。
UPDATE table1
SET a.Name = "VALID"
FROM table1 a
WHERE a.Quality = 0
我希望该子句基本上说“其中 a.Quality 与表 2 b 中的任何数字匹配”WHERE a.Quality = 0
我该怎么做?是否需要将 table2 中的行作为参数传递?或者我可以只使用 where 子句吗?
谢谢!
答:
1赞
marc_s
12/10/2021
#1
使用简单的 ?INNER JOIN
喜欢这个:
UPDATE table1
SET a.Name = "VALID"
FROM table1 a
INNER JOIN table2 b ON a.Quality = b.SomeColumnNameHere
如果你坚持使用“仅”子句,你可以尝试如下:WHERE
UPDATE table1
SET a.Name = "VALID"
FROM table1 a
WHERE a.Quality IN (SELECT SomeColumnNameHere
FROM table2)
评论