我是靠谱客的博主 义气月亮,最近开发中收集的这篇文章主要介绍Oracle查询过去一个时间点的库存,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

create table CUX_ONHAND
(
item_code
VARCHAR2(30),
subinventory
VARCHAR2(30),
transaction_qty NUMBER
);
create table CUX_TRANSACTION
(
item_code
VARCHAR2(30),
subinventory
VARCHAR2(30),
transaction_date DATE,
transaction_qty
NUMBER
);

1.计算2016年10月1日0点0分0秒现有量,数量为0的不显示,显示字段:物料、仓库、数量
2.计算不同仓库的现有量,显示字段:物料、仓库A数量、仓库B数量、其他仓库数量
1
SELECT tt.item_code,
       tt.subinventory,
       SUM(tt.transaction_qty) transaction_qty
  FROM (SELECT o.item_code, o.subinventory, o.transaction_qty
          FROM cux_onhand o
        UNION ALL
        SELECT t.item_code,
               t.subinventory,
               transaction_qty * (-1) transaction_qty
          FROM cux_transaction t
         WHERE t.transaction_date >=
               to_date('2016-10-01 00:00:00', 'YYYY-MM-DD HH24:MI:SS')) tt
 GROUP BY tt.item_code, tt.subinventory
HAVING SUM(tt.transaction_qty) > 0

2
SELECT item_code,
SUM(a.a_qty),
SUM(a.b_qty),
SUM(a.o_qty)
FROM (SELECT t.item_code,
decode(t.subinventory,
'A',
t.transaction_qty,
0) a_qty,
decode(t.subinventory,
'B',
t.transaction_qty,
0) b_qty,
decode(t.subinventory,
'A',
0,
'B',
0,
t.transaction_qty) o_qty
FROM cux_onhand t) a
GROUP BY a.item_code


最后

以上就是义气月亮为你收集整理的Oracle查询过去一个时间点的库存的全部内容,希望文章能够帮你解决Oracle查询过去一个时间点的库存所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部