找回密码
 立即注册

QQ登录

只需一步,快速开始

abcdefg0099

高级会员

79

主题

245

帖子

1010

积分

高级会员

积分
1010
abcdefg0099
高级会员   /  发表于:2024-6-20 22:46  /   查看:1460  /  回复:10
1金币
采购入库主表,
采购入库子表(绑定主表id),
采购入库付款表(绑定主表id)


我想查询  
1 采购入库子表绑定主表id 计算总金额

2采购入库付款表绑定主表id 已付款如果没有则为空或者0

3计算 采购入库子表的总金额  -   已付款金额  

这个视图想这样显示4个字段    主表id , 采购入库子表的计算  ,已付款金额计算   ,    采购入库子表的总金额  -   已付款金额  

最佳答案

查看完整内容

select "采购入库主表".ID,"商品金额","已付款金额", "商品金额"-"已付款金额" AS 未付款 FROM "采购入库主表" JOIN (SELECT "采购入库主表id" AS RKZID ,SUM("商品金额") AS "商品金额" FROM "采购入库子表" GROUP BY "采购入库子表"."采购入库主表id") AS AA ON "采购入库主表".ID=RKZID JOIN (SELECT "采购入库主表id"AS FKZID,SUM("已付款金额") AS "已付款金额" FROM "采购入库付款子表" GROUP BY "采购入库主表i ...

10 个回复

倒序浏览
最佳答案
最佳答案
Syl悬赏达人认证
银牌会员   /  发表于:2024-6-20 22:46:06
来自 6#
本帖最后由 Syl 于 2024-6-21 10:55 编辑

select "采购入库主表".ID,"商品金额","已付款金额", "商品金额"-"已付款金额" AS 未付款 FROM "采购入库主表"
JOIN    (SELECT "采购入库主表id" AS RKZID ,SUM("商品金额") AS "商品金额" FROM "采购入库子表"
GROUP BY "采购入库子表"."采购入库主表id") AS AA ON "采购入库主表".ID=RKZID
JOIN    (SELECT "采购入库主表id"AS FKZID,SUM("已付款金额") AS "已付款金额" FROM "采购入库付款子表"  GROUP BY "采购入库主表id")AS BB
ON "采购入库主表"."ID"=FKZID

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

参与人数 1金币 +5 收起 理由
Lay.Li + 5 赞一个!

查看全部评分

回复 使用道具 举报
successit悬赏达人认证
银牌会员   /  发表于:2024-6-21 08:00:09
2#
你这个需求,其实用活字格自带的统计字段,在页面中也可以直接实现的,视图也写了个,你可以参考下

  1. WITH 入库 AS
  2. (
  3.         SELECT 主表ID,SUM(金额) AS  入库金额 FROM 采购入库子表 GROUP BY 主表ID
  4. ),
  5. 付款 AS
  6. (
  7.         SELECT 主表ID,SUM(金额) AS  付款金额 FROM 采购入库付款表 GROUP BY 主表ID
  8. )

  9. SELECT
  10. T.ID AS 主表ID,
  11. ISNULL(T1.入库金额,0) AS 入库金额,
  12. ISNULL(T2.付款金额,0) AS 付款金额,
  13. ISNULL(T1.入库金额,0) - ISNULL(T2.付款金额,0) AS 未付金额

  14. FROM 采购入库主表 T

  15. LEFT JOIN 入库 T1 ON T1.主表ID = T.ID

  16. LEFT JOIN 付款 T2 ON T2.主表ID = T.ID
复制代码

评分

参与人数 1金币 +5 收起 理由
Lay.Li + 5 赞一个!

查看全部评分

回复 使用道具 举报
abcdefg0099
高级会员   /  发表于:2024-6-21 09:18:29
3#
本帖最后由 abcdefg0099 于 2024-6-21 09:38 编辑
successit 发表于 2024-6-21 08:00
你这个需求,其实用活字格自带的统计字段,在页面中也可以直接实现的,视图也写了个,你可以参考下

我的是自带数据库的视图,按照你的写法不行

WITH 入库 AS

(
        SELECT "采购入库主表id",SUM(金额) AS  入库金额 FROM "采购入库子表" GROUP BY "采购入库主表id"
),
付款 AS
(
        SELECT "采购入库主表id",SUM(金额) AS  付款金额 FROM "采购入库付款子表" GROUP BY "采购入库主表id"
)
SELECT
T.ID AS "ID",
ISNULL(T1.入库金额,0) AS 入库金额,
ISNULL(T2.付款金额,0) AS 付款金额,
ISNULL(T1.入库金额,0) - ISNULL(T2.付款金额,0) AS 未付金额

FROM "采购入库主表" T

LEFT JOIN 入库 T1 ON T1."ID" = T.ID

LEFT JOIN 付款 T2 ON T2."ID" = T.ID


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

参与人数 1金币 +5 收起 理由
Lay.Li + 5 赞一个!

查看全部评分

回复 使用道具 举报
Syl悬赏达人认证
银牌会员   /  发表于:2024-6-21 09:46:28
4#
给个demo我试试
回复 使用道具 举报
abcdefg0099
高级会员   /  发表于:2024-6-21 09:49:34
5#
zhegeshi demo

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
abcdefg0099
高级会员   /  发表于:2024-6-21 14:56:20
7#
本帖最后由 abcdefg0099 于 2024-6-21 15:52 编辑
Syl 发表于 2024-6-21 10:54
select "采购入库主表".ID,"商品金额","已付款金额", "商品金额"-"已付款金额" AS 未付款 FROM "采购入库 ...
大佬新增的单子 视图不会计算


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
abcdefg0099
高级会员   /  发表于:2024-6-21 16:06:58
8#
Syl 发表于 2024-6-21 10:54
select "采购入库主表".ID,"商品金额","已付款金额", "商品金额"-"已付款金额" AS 未付款 FROM "采购入库 ...

LEFT JOIN 用这个语句  能显示了
回复 使用道具 举报
Syl悬赏达人认证
银牌会员   /  发表于:2024-6-21 16:16:12
9#
abcdefg0099 发表于 2024-6-21 16:06
LEFT JOIN 用这个语句  能显示了

回复 使用道具 举报
abcdefg0099
高级会员   /  发表于:2024-6-21 16:27:49
10#
Syl 发表于 2024-6-21 16:16

还是大佬厉害
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部