gpt4 book ai didi

SQL JOIN 3个表,唯一行,跨表计算

转载 作者:行者123 更新时间:2023-12-04 18:28:35 25 4
gpt4 key购买 nike

我有 3 个表。它们具有相同的列。我需要将它们合并到一个表中,这样我只有唯一的行,需要跨 3 个表计算数量列。

例如

表一

姓名 1, 2, 100.00

姓名 5, 3, 25.00


表2

姓名 1, 2, 50.00


表3

姓名 1, 2, 60.00


期望的结果:

Name1, 2, 90.00 即计算为 (100-60+50)

姓名 5, 3, 25.00

有什么想法吗?我已经尝试过 union 但这并没有为我计算或显示唯一的行....

最佳答案

在这个解决方案中,我只取了第二列的最小值,因为您没有指定它应该如何在三个表中组合。

Select Z.Name, Min( SomeInt ) As MinSomeInt
, Sum( SomeDecimal ) As TotalSomeDecimal
From (
Select Name, SomeInt, SomeDecimal
From Table1
Union All
Select Name, SomeInt, SomeDecimal
From Table2
Union All
Select Name, SomeInt, SomeDecimal * -1
From Table3
) As Z
Group By Z.Name

关于SQL JOIN 3个表,唯一行,跨表计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7758167/

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