先insert t_formula2(id_i,tid_i) values('',''); 然后使用update语句, update t set t.formula_ch=(a.ID/b.ID*100) --a.id,b.id 从其他表中取得 from At_formula2 t inner join select a.ID from a on a.id_i=t.id_i --与a表关联 取得a.id inner join select b.ID from b on b.id_i=t.id_i --与b表关联 取得b.id
CREATE TABLE [dbo].[t_formula2](
[id_i] [int],
[tid_i] [int],
[formula_ch] [varchar](1000) COLLATE Chinese_PRC_CI_AS NOT NULL,
--有几个字段让我去掉了
)
其中[formula_ch]是以这样的结构存储的
[1438]/[1396]*100
1438和1396都是其他数据表中的ID而tid_i是目标ID,因为计算的时候有可能设计到递贵过程计算的思路:可以做一个应用程序,在您想计算的时候调用这个应用程序
而应用程序的作用是通过t_formula2表来计算值,在将得到的值更新到存储值的表中tid_i所对应的行
然后使用update语句,
update t
set t.formula_ch=(a.ID/b.ID*100) --a.id,b.id 从其他表中取得
from At_formula2 t
inner join
select a.ID
from a
on a.id_i=t.id_i --与a表关联 取得a.id
inner join
select b.ID
from b
on b.id_i=t.id_i --与b表关联 取得b.id