Order 表示 客户(customer)购买不同的产品(product),并且预留客户的联系信息。有时候客户的一些订单的联系信息丢失了,例如:
Order: customerid    productid   address      tel
  c1            p1         addres1     11111111
  c1            p2         null        null该order表中的客户订单很多,怎样能让oracle检测在address和tell为null的情况下,自动从该客户的其他订单找到该客户的信息来修改丢失的address,tel信息。

解决方案 »

  1.   

    update Order set address=(select max(address) from Order a where a.customerid=Order.customerid) where address is null 相同的写法,修改tel
      

  2.   

    LS的,在pl/sql developer或toad中手动执行是可以的,但怎样能让oracle自动实现修改呢?
      

  3.   

    这肯定得写个job去扫描...
    具体请参照
    http://topic.csdn.net/u/20100222/15/7c16a404-bfee-4730-9c72-a7d45bd851b4.html?39117
      

  4.   

    我以前也遇到过类似问题。。后来就是用job搞定的
      

  5.   

    用job吧。。其实这个也有问题,如果有的同一个客户address和tell有好几个版本。。那就不知道该找哪个了