2

我想升级表中的所有列,我的目标是从它将更新的行中检索一列然后更新它,例如:

update works 
set encrpyted_item_no = (CAST(RTrim((
    select unencrypted_item_no 
    from works 
    where name = name
) AS VARBINARY(50))

我知道该查询是错误的,这只是向您展示我的目标的一个示例。

我希望它unencrypted_item_no从其行中选择列,然后用它获取的数据更新同一行,unencrypted_item_no整个表执行此操作。

我将如何做到这一点?

4

2 回答 2

5

您不需要进行子选择,引用集合中的另一列将逐行工作,即:

UPDATE works 
SET encrpyted_item_no = CAST(RTrim(unencrypted_item_no) AS varbinary(50))
于 2012-07-09T15:22:20.660 回答
2

这还不够吗?

update works 
set encrypted_item_no = CAST(RTrim(unencrypted_item_no) AS VARBINARY(50))
于 2012-07-09T15:23:06.597 回答