我现在有三个表,一个是折扣设置表(积分,折扣),一个是卡累计金额表(卡号,累计金额),
一个是卡发放(卡号,折扣率),其中两个卡号是关联的,所谓的积分也就是累计金额,我想实现的是,当累计金额变化时,去向折扣设置表中去寻找它所在的区间断,然后改变此卡号的折扣率,这个代码怎么写,我想在数据库中实现,怎么写,希望各位大侠写的详细一些,每句代码后希望都有注释,多谢,一定给分,在线关注
一个是卡发放(卡号,折扣率),其中两个卡号是关联的,所谓的积分也就是累计金额,我想实现的是,当累计金额变化时,去向折扣设置表中去寻找它所在的区间断,然后改变此卡号的折扣率,这个代码怎么写,我想在数据库中实现,怎么写,希望各位大侠写的详细一些,每句代码后希望都有注释,多谢,一定给分,在线关注
卡累计金额表(卡号,累计金额) t2
卡发放(卡号,折扣率) t3
update t3
set c.折扣率 =
(
select max(m.折扣)
from t1 m
where b.累计金额 <= m.积分
}
from t2 b,
t3 c
where b.卡号 = c.卡号
set c.折扣率 =
isnull
(
(
select max(m.折扣)
from t1 m
where b.累计金额 >= m.积分
),
0
)
from t2 b,
t3 c
where b.卡号 = c.卡号