我有两个表test和test1
测试
id formula
1 A12+C32+D+X
2 K/Y
测试1
id Code
6 A12
7 C32
100 A1
10 D
12 X
13 K
14 Y
如何更新表test
中的公式(文本公式)字段以获取
id formula
1 [6]+[7]+[10]+[12]
2 [13]/[14]
答案 0 :(得分:1)
我能得到的最接近的是使用TSQL。它使用游标遍历替换表中的每一行并更新公式表。
declare @rid numeric
declare @rcode varchar
declare @getreplacement cursor
set @getreplacement = cursor for
select id, code
from test1 -- replacement
open @getreplacement
fetch next
from @getreplacement into @rid, @rcode
while @@fetch_status = 0
begin
update test set formula = replace(f, @rcode, '['+cast(@rid as varchar)+']') -- replace formula
fetch next
from @getreplacement into @rid, @rcode
end
close @getreplacement
deallocate @getreplacement
go