gpt4 book ai didi

mysql - 用于将一列与另一列进行比较的 SQL 查询

转载 作者:行者123 更新时间:2023-11-29 08:04:26 24 4
gpt4 key购买 nike

这是我正在做的一个小项目。我正在尝试编写一个可以在下表中执行此操作的查询

ID, Name, Pledge_Amount , Pledge_payment_amt , Gift_No, Pledge_Gift_No, Pledge_Open/Closed

ID 不是唯一的。因此,一个人会 promise 一些钱 (Pledge_Amount),并支付全部或部分资金 (Pledge_ payment_amt),并有多个记录。对于相同的 promise /礼物,Gift_no 将是相同的,并且每当该人决定捐赠时都会与 Pledge_Gift_No 匹配。只有当礼物完全还清后,状态才会改变。

1, Alex, 20, 10, G1, NULL, Open

1, Alex, NULL,10, NULL, G1, Closed

查询是:

Find the persons with outstanding gift amounts and change their status to open/closed

到目前为止,我已经能够做到这一点:

select *
from Test_Table2 S inner join Test_Table2 F
on S.Gift_No = F.Pledge_gift_No
WHERE S.ID = F.ID;

任何有关如何处理其余查询的指示将不胜感激。

最佳答案

类似这样的吗?

SELECT S.*, SUM(Pledge_payment_amt) AS pledged
FROM Test_table2 AS recipients
LEFT JOIN Test_table2 AS pledgers
ON recipients.Gift_no = pledgers.Pledge_gift_no
GROUP BY S.Gift_No
HAVING S.Pledge_Amount > pledged

这将返回所需的 promise 金额大于已 promise 金额的所有“接收者” - 例如他们尚未实现 promise 目标。

关于mysql - 用于将一列与另一列进行比较的 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23017735/

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