📜  门| Gate IT 2005 |第67章

📅  最后修改于: 2021-06-29 00:33:26             🧑  作者: Mango

公司保留其销售人员的销售记录,并根据每个人一年的总销售额向他们支付佣金。该数据保存在具有以下架构的表中:
salesinfo =(销售人员编号,总销售额,佣金)
在某一年中,由于业务业绩更好,公司决定通过以下公式提高对销售人员的佣金,以进一步奖励其销售人员:
如果佣金<= 50000,将其提高2%
如果50000 <佣金<= 100000,将其提高4%
如果佣金> 100000,则提高6%
IT人员编写了三种不同的SQL脚本来计算每个平板的增强能力,这些脚本中的每一个都将作为单独的事务运行,如下所示:
 T1
Update salesinfo
Set commission = commission * 1.02
Where commission < = 50000;

 

 T2
Update salesinfo
Set commission = commission * 1.04
Where commission > 50000 and commission is < = 100000;

 

 T3
Update salesinfo
Set commission = commission * 1.06
Where commission > 100000;

 

以下是执行这些交易的哪个选项,可以正确更新所有销售人员的佣金
(A)执行T1,然后执行T2,再执行T3
(B)执行T2,然后执行T3; T1在整个过程中同时运行
(C)执行T3,然后执行T2; T1在整个过程中同时运行
(D)依次执行T3,T2和T1答案: (D)
说明: T3跟着T2跟着T1

如果不遵循此顺序,则可能会导致一个平板的官员两次受益。

假设某位官员的佣金为99,999,必须按照T2的要求对其进行更新。

99,999 * 1.04 = 1,03998,他再次有资格参加下一次的审判。

T3跟着T2跟着T1跟着T1将被检查像上面一样的所有边界情况。所以答案是D
这个问题的测验