gpt4 book ai didi

mysql - 如何对连接表中的多列求和[添加]

转载 作者:行者123 更新时间:2023-11-29 08:07:15 27 4
gpt4 key购买 nike

我需要编写一个查询来连接多个表并对不同表中的多个列进行总计,并且似乎不知道如何做到这一点:

以下是表格:

Contracts table

Contract Budgets

program names

我想要得到的结果是添加了特定预算名称的契约(Contract)预算的结果:即[这不起作用,但给出了一个想法]

select c.contract_budget_f1, c.contract_budget_f2, cb.budget_type_id, c.id, sum(cb.budget_f1) as bf1, sum(cb.budget_f2) as bf2
from `flow_contract` c
left join `flow_contract_budget` cb on cb.contract_id = c.id
where c.program_id = '69'
group by cb.budget_type_id

整个结果集如下所示:

[budget_type_id]    
[contract_budget_f1]
[contract_budget_f2]
[bf1]
[bf2]

它将返回 3 行,其中添加了每种预算类型的预算我怎样才能做到这一点,这可能吗?

这里是表格的链接 - 抱歉,没有意识到您无法单击它们...

http://media.bigblockstudios.ca/stack/program-name.gif

http://media.bigblockstudios.ca/stack/contract-budget.gif

http://media.bigblockstudios.ca/stack/contracts.gif

更新

我的工作方式是这样的:

    select c.id, c.program_id, c.contract_budget_f1, c.contract_budget_f2, cb.budget_f1, cb.budget_f2, cb.budget_type_id, c.id, 
sum(cb.budget_f1) as bf1, sum(cb.budget_f2) as bf2
from `flow_contract` c
left join `flow_contract_budget` cb on cb.contract_id = c.id
where c.program_id = '".$formfields['program_id']."'
group by cb.budget_type_id
order by cb.budget_type_id

最佳答案

我认为你想要的是:

group by cb.budget_type_id, cb.contract_id

或者反过来。你能做一个 sql fiddle 吗?

关于mysql - 如何对连接表中的多列求和[添加],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22463943/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com