表结构如下:
表 A
sell_no(key) order_no code1 code2
U9900001 null A001 B001
U9900002 null null null
U9900003 J9900001 null null
U9900004 J9900002 null null
U9900005 null null null表 B
sell_no(key) cd1 cd2
U9900001 A001 B001
U9900002 A002 B002
U9900003 A003 B003
U9900004 A004 B004
U9900005 A005 B005表 C
order_no(key) index(key) no1 no2
J9900001 1 C001 D001
J9900002 1 C002 D002
J9900002 2 C003 D003
J9900003 1 C004 D004需要对表A的code1,code2字段都为null的数据进行更新
条件:1.当A.order_no为null时,A.sell_no = B.sell_no,取表B的cd1与cd2的值
2.当A.order_no有值时,A.order_no = C.order_no and C.index = '1'
取表C的no1和no2值求一个oracle中update语句更新表A,得到如下结果:
表 A
sell_no(key) order_no code1 code2
U9900001 null A001 B001
U9900002 null A002 B002
U9900003 J9900001 C001 D001
U9900004 J9900002 C002 D002
U9900005 null A005 B005第一次发贴,如果有说明不足的地方再补充,谢谢大家
表 A
sell_no(key) order_no code1 code2
U9900001 null A001 B001
U9900002 null null null
U9900003 J9900001 null null
U9900004 J9900002 null null
U9900005 null null null表 B
sell_no(key) cd1 cd2
U9900001 A001 B001
U9900002 A002 B002
U9900003 A003 B003
U9900004 A004 B004
U9900005 A005 B005表 C
order_no(key) index(key) no1 no2
J9900001 1 C001 D001
J9900002 1 C002 D002
J9900002 2 C003 D003
J9900003 1 C004 D004需要对表A的code1,code2字段都为null的数据进行更新
条件:1.当A.order_no为null时,A.sell_no = B.sell_no,取表B的cd1与cd2的值
2.当A.order_no有值时,A.order_no = C.order_no and C.index = '1'
取表C的no1和no2值求一个oracle中update语句更新表A,得到如下结果:
表 A
sell_no(key) order_no code1 code2
U9900001 null A001 B001
U9900002 null A002 B002
U9900003 J9900001 C001 D001
U9900004 J9900002 C002 D002
U9900005 null A005 B005第一次发贴,如果有说明不足的地方再补充,谢谢大家
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货