现在有A,B,C三张表。
A。表
ID ADD ITEM NUM1, NUM2, NUM3
T1 BJ item1 5, 5, 5
T1 BJ item2 30, 30, 30B。表
ITEM SUBITEM P_DATE
item1, subitem1,2011/6/3
item1, subitem2,2011/6/2
item1, subitem3,2011/6/1
item2, subitem1,2011/6/3
item2, subitem2,2011/6/2
item2, subitem3,2011/6/1C。表 (更新前)
C_ID ITEM SUBITEM SJ_NUM KD_NUM CM_NUM
2 item1 sub_item1 0 0 20
3 item1 sub_item2 0 0 20
5 item1 sub_item3 0 0 20
8 item2 sub_item1 0 0 20
10 item2 sub_item2 0 0 20
11 item2 sub_item3 0 0 20
现在想做的是首先抽出A表的数据,
1.A表中记录的NUM1+NUM2+NUM3 小于 C表中对应记录的CM_NUM的话,
那么就用NUM1+NUM2+NUM3更新P_DATE(B表中)最小的那条记录的SJ_NUM值,并且其它P_DATE最小记录的
KD_NUM更新成1。2.A表中记录的NUM1+NUM2+NUM3 大于 C表中对应记录的CM_NUM的话,那就进行倒推,
比如A表中的item2的NUM1+NUM2+NUM3=90,C表中C_ID=11的这条记录CM_NUM等于20,那么SJ_NUM就设置20.
现在90-20=70,然后C表中C_ID=10的这条记录CM_NUM也等于20,那么SJ_NUM还是设置20.现在70-20=50.
最好把50,设置给C_ID=8的那条记录的SJ_NUM中。C。表 (更新后)
C_ID ITEM SUBITEM SJ_NUM KD_NUM CM_NUM
2 item1 sub_item1 0 1 20
3 item1 sub_item2 0 1 20
5 item1 sub_item3 15 0 20
8 item2 sub_item1 50 0 20
10 item2 sub_item2 20 0 20
11 item2 sub_item3 20 0 20大致就是这样,感觉有点复杂,希望大家帮帮忙
A。表
ID ADD ITEM NUM1, NUM2, NUM3
T1 BJ item1 5, 5, 5
T1 BJ item2 30, 30, 30B。表
ITEM SUBITEM P_DATE
item1, subitem1,2011/6/3
item1, subitem2,2011/6/2
item1, subitem3,2011/6/1
item2, subitem1,2011/6/3
item2, subitem2,2011/6/2
item2, subitem3,2011/6/1C。表 (更新前)
C_ID ITEM SUBITEM SJ_NUM KD_NUM CM_NUM
2 item1 sub_item1 0 0 20
3 item1 sub_item2 0 0 20
5 item1 sub_item3 0 0 20
8 item2 sub_item1 0 0 20
10 item2 sub_item2 0 0 20
11 item2 sub_item3 0 0 20
现在想做的是首先抽出A表的数据,
1.A表中记录的NUM1+NUM2+NUM3 小于 C表中对应记录的CM_NUM的话,
那么就用NUM1+NUM2+NUM3更新P_DATE(B表中)最小的那条记录的SJ_NUM值,并且其它P_DATE最小记录的
KD_NUM更新成1。2.A表中记录的NUM1+NUM2+NUM3 大于 C表中对应记录的CM_NUM的话,那就进行倒推,
比如A表中的item2的NUM1+NUM2+NUM3=90,C表中C_ID=11的这条记录CM_NUM等于20,那么SJ_NUM就设置20.
现在90-20=70,然后C表中C_ID=10的这条记录CM_NUM也等于20,那么SJ_NUM还是设置20.现在70-20=50.
最好把50,设置给C_ID=8的那条记录的SJ_NUM中。C。表 (更新后)
C_ID ITEM SUBITEM SJ_NUM KD_NUM CM_NUM
2 item1 sub_item1 0 1 20
3 item1 sub_item2 0 1 20
5 item1 sub_item3 15 0 20
8 item2 sub_item1 50 0 20
10 item2 sub_item2 20 0 20
11 item2 sub_item3 20 0 20大致就是这样,感觉有点复杂,希望大家帮帮忙
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货