问1个SQL语句。多谢!

Vicar2 2012-08-02 04:00:56

--入库表
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;


...全文
119 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
merge百度下吧 很多例子
Vicar2 2012-08-02
  • 打赏
  • 举报
回复
该如何实现呢? 用其他语句也可以。
  • 打赏
  • 举报
回复
一般是这种类型 其实还有一种方法,接触的稍微少点


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);

  • 打赏
  • 举报
回复
Update不支持直接查询多表 LZ这种 From StockQty D Inner Join InStockDetail S相当于直接查询2个表了 肯定报错


17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧