gpt4 book ai didi

sql - 在 psql 中显示两列而不是两行

转载 作者:行者123 更新时间:2023-12-04 03:21:47 25 4
gpt4 key购买 nike

我正在使用此处显示的查询,由于 project_type 是选择(内部,项目)列,它显示了两行。

我的要求是为 project_type 显示两列 sum(unit.amount) - 而不是两行。

SELECT project_id, project_type, SUM(unit_amount)
FROM account_analytic_line
WHERE project_id = 2
GROUP BY project_type, project_id

当前结果:

469;"Internal";154.416666666667
469;"Project";3963.08333333333

要求的结果:

469; 154.416666666667; 3963.08333333333

最佳答案

您得到 2 行,因为您在 GROUP BY 子句中使用了 project_type
您必须仅按 project_id 分组并使用条件聚合:

SELECT project_id, 
SUM(CASE WHEN project_type = 'Internal' THEN unit_amount ELSE 0 END) sum_Internal,
SUM(CASE WHEN project_type = 'Project' THEN unit_amount ELSE 0 END) sum_Project
FROM account_analytic_line
WHERE project_id = 2
GROUP BY project_id

关于sql - 在 psql 中显示两列而不是两行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68363215/

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