ZHZHK001 2021-08-08 22:28 采纳率: 72.7%
浏览 87

如何使用sql查询查出库存呢

CREATE TABLE LC_IO (
ID INTEGER PRIMARY KEY,--出库库行主键
GOODS_ID INTEGER  ,--物料ID
IN_ID INTEGER  ,   --物料来源
OUT_ID INTEGER  ,    --物料送到
NUM NUMBER(10,2) ,--数量
IO_KIND NUMBER(2)   --1 入库   2 出库  0未定义
);
INSERT INTO "LC_IO"("ID", "GOODS_ID", "IN_ID", "OUT_ID", "NUM", "UNIT", "IN_HANDER", "OUT_HANDER", "IO_DESC", "IO_STATUS", "IO_DATE", "IO_SN", "IO_CRI", "IO_CTIME", "IO_MODI", "IO_MTIME") VALUES ('1', '468', '5002', '5000', '100', NULL, NULL, NULL, NULL, '1', TO_DATE('2021-08-01 01:50:34', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, TO_DATE('2021-08-01 01:50:38', 'SYYYY-MM-DD HH24:MI:SS'), NULL, TO_DATE('2021-08-01 01:50:38', 'SYYYY-MM-DD HH24:MI:SS'));
INSERT INTO "LC_IO"("ID", "GOODS_ID", "IN_ID", "OUT_ID", "NUM", "UNIT", "IN_HANDER", "OUT_HANDER", "IO_DESC", "IO_STATUS", "IO_DATE", "IO_SN", "IO_CRI", "IO_CTIME", "IO_MODI", "IO_MTIME") VALUES ('2', '468', '5000', '57', '50', NULL, NULL, NULL, NULL, '1', TO_DATE('2021-08-01 01:50:34', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, TO_DATE('2021-08-01 02:07:35', 'SYYYY-MM-DD HH24:MI:SS'), NULL, TO_DATE('2021-08-01 02:07:35', 'SYYYY-MM-DD HH24:MI:SS'));
INSERT INTO "LC_IO"("ID", "GOODS_ID", "IN_ID", "OUT_ID", "NUM", "UNIT", "IN_HANDER", "OUT_HANDER", "IO_DESC", "IO_STATUS", "IO_DATE", "IO_SN", "IO_CRI", "IO_CTIME", "IO_MODI", "IO_MTIME") VALUES ('3', '442', '5000', '56', '11', NULL, NULL, NULL, NULL, '1', TO_DATE('2021-08-01 01:50:34', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, TO_DATE('2021-10-30 11:05:38', 'SYYYY-MM-DD HH24:MI:SS'), NULL, TO_DATE('2021-10-30 11:05:38', 'SYYYY-MM-DD HH24:MI:SS'));
INSERT INTO "LC_IO"("ID", "GOODS_ID", "IN_ID", "OUT_ID", "NUM", "UNIT", "IN_HANDER", "OUT_HANDER", "IO_DESC", "IO_STATUS", "IO_DATE", "IO_SN", "IO_CRI", "IO_CTIME", "IO_MODI", "IO_MTIME") VALUES ('4', '442', '5000', '56', '10', NULL, NULL, NULL, NULL, '1', TO_DATE('2021-08-01 01:50:34', 'SYYYY-MM-DD HH24:MI:SS'), NULL, NULL, TO_DATE('2021-10-30 11:05:38', 'SYYYY-MM-DD HH24:MI:SS'), NULL, TO_DATE('2021-10-30 11:05:38', 'SYYYY-MM-DD HH24:MI:SS'));


数据库表是
【其实我就是吧出库与入库都放在一个表里面了】

img

要求的结果是

img

上图的ID与仓库ID要调换一下 我示意图错了

我的错误语句以及结果是


SELECT
    T2.GOODS_ID,
    T2.IN_ID 仓库,
    ( T2.INSUM - T1.OUTSUM ) 库存 
FROM
    ( SELECT GOODS_ID, in_ID, sum( num) INSUM FROM LC_IO GROUP BY goods_id, in_ID ORDER BY GOODS_ID ) T2 --入库
    INNER JOIN
        ( SELECT GOODS_ID, OUT_ID, sum( num) OUTSUM FROM LC_IO GROUP BY goods_id, OUT_ID ORDER BY GOODS_ID ) T1 --出库
    ON T1.GOODS_ID = T2.GOODS_ID

img

  • 写回答

1条回答 默认 最新

  • 关注

    select goods_id,sum(num) from LC_IO group by goods_id

    评论

报告相同问题?

问题事件

  • 修改了问题 11月18日
  • 修改了问题 11月18日
  • 修改了问题 10月31日
  • 修改了问题 10月31日
  • 展开全部

悬赏问题

  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)