假设我有3个表、
进货表:
元件名 数量
 aa     10
 bb     20销售表:
元件名  数量 
 aa      4
 bb      8
库存表:
元件名  数量
 aa      X
 bb      Y
我的问题是
1、如何书写 SQL语句 使得 X=10-4,Y=20-8,即 库存表中aa的数量等于 进货表中aa的数量 - 销售表中aa的数量呢? 
2、当我使用 insert into 进货表 values(aa,30); 时,
如何使得进货表为:
元件名  数量
 aa      40
 bb      20
而不是:
元件名  数量
 aa     10
 bb     20 
 aa     30  
 呢?

解决方案 »

  1.   


    1. select 进货表.元件名, 元件名.数量-销售表.数量 from 进货表 
    left join 销售表 on 进货表.元件名 = 销售表.元件名
    (假设销售表中对每种元件只有一条记录)2. 也只能先 select 以下, 判断有无此元件,
    如有, 用 update 数量, 否则, insert.
      

  2.   

    select出来用java解决
    想麻烦的话就用plsql之类的