日期:2014-05-17  浏览次数:20744 次

问1个SQL语句。多谢!
SQL code

--入库表 
Create Table InStockDetail2 
( 
 dID int, --明细ID 
 MID int, --单据ID 
 FMarNo varchar2(50), --物料 
 FStockID int,  --仓库id 
 InQty int  --入库数量 
); 

--库存表 
Create Table StockQty2 
( 
 FStockID int, --仓库ID 
 FMarNo varchar2(20), --物料 
 FQty int   --库存数量 
); 

--以下语句:我想根据单号为1的入库单,更新库存表的库存数量, 可是执行的时候提示“SQL未正确结束”
--请问,这个SQL语句应该怎么写? 多谢!
Update D Set D.FQty = D.FQty + S.InQty From StockQty D 
Inner Join InStockDetail S on D.FMarNo = S.FMarNo and D.FStockID = S.FStockID 
Where S.MID = 1;





------解决方案--------------------
一般是这种类型 其实还有一种方法,接触的稍微少点

SQL code

Update StockQty D 
Set D.FQty = D.FQty + (Select S.InQty 
                       from InStockDetail S 
                       where D.FMarNo = S.FMarNo and D.FStockID = S.FStockID and S.MID = 1);