繁体   English   中英

有没有办法通过在 SQL 服务器中加入多个表来获得没有 GROUPING 的列的 SUM()

[英]Is there is way to get SUM() of column without GROUPING by joining multiple tables in SQL Server

我通过GROUP BY CrowdfundIDCrowdfundedUser表中获得金额的SUM()但很难获得SUM()因为所有列都是唯一的。

众筹:

众筹ID 目标金额 开始日期
9 10000 2022 年 9 月 2 日
5 20000 2022 年 10 月 2 日
55 350000 2022 年 11 月 2 日
444 541256 2022 年 12 月 2 日
54 78458 2022 年 13 月 2 日

众筹用户:

ID 用户身份 众筹ID 数量
744 12214 9 1000
745 4124 5 8422
746 12214 55 784
747 12214 444 874
748 64554 54 652

众筹支付交易:

众筹用户ID 发票 数量 付款日期
744 RA45A14124 1000 2022 年 9 月 2 日
745 RA45A12412 8422 2022 年 10 月 2 日
746 RA45U14789 784 2022 年 11 月 2 日
747 RA45F12457 874 2022 年 12 月 2 日
748 RA45M00124 652 2022 年 13 月 2 日

我的查询:

SELECT
    c.CrowdfundID,
    SUM(cu.Amount),
    SUM(cpt..Amount)
FROM 
    Crowdfund c
INNER JOIN 
    CrowdfundedUser cu ON c.CrowdfundID = cu.CrowdfundID
INNER JOIN 
    CrowdfundiPaymentTransaction cpt ON cu.ID = cpt.CrowdfundedUserID
GROUP BY 
    c.CrowdfundID

SELECT c.CrowdfundID,
SUM(cu.Amount) OVER (
ORDER BY c.CrowdfundID) 金额,
SUM(cpt..Amount) OVER (ORDER BY c.CrowdfundID) CptAmount
来自众筹 c
INNER JOIN CrowdfundedUser cu ON c.CrowdfundID = cu.CrowdfundID
内部加入 CrowdfundiPaymentTransaction cpt ON cu.ID = cpt.CrowdfundedUserID

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM