循环遍历临时表,比较和设置值

时间:2013-08-23 06:58:33

标签: sql sql-server

我正在寻找一种能够通过CSV文件或将CSV数据添加到临时表(我知道如何执行此部分)然后将一列上的临时表与我的永久物表进行比较的方法表和它匹配的行,将另一列设置为临时表中的值。

if(Old_Url = Old Url)
{
  new_url = new_url
}

这是我想要做的一个糟糕的代码示例,因为我不知道如何在SQL中显示它

1 个答案:

答案 0 :(得分:2)

您不会在SQL中循环(通常) - 您编写的查询适用于整个行。

看起来你想要某种形式的更新:

UPDATE p
SET new_url = t.new_url
FROM PermanentTable p
INNER JOIN TemporaryTable t
ON p.old_url = t.old_url

(尽管如果TemporaryTable可能包含多个具有相同old_url值和不同new_url值的行,您应该小心谨慎 - 但是没有明确定义哪些值将应用于任何匹配的行在PermanentTable