gpt4 book ai didi

mysql - 过滤带有退款id的购买的SQL查询条件

转载 作者:行者123 更新时间:2023-11-29 18:25:18 25 4
gpt4 key购买 nike

我有一个数据表,其中有两种交易类型“购买”和“退款”,并且具有唯一的交易 ID。

退款还有另一列名为“退款 ID”,它实际上是特定购买的交易 ID。 (假设有一笔交易 ID 为 100 的购买,因此退款时交易 ID 为 101,退款 ID 为 100)。

现在,在我的查询中,我只想显示交易类型购买,但我想添加一个字段,如果特定购买已退款,则应显示为已退款,如果尚未退款,则该列应为空。

我写的查询是要显示的数据是:

SELECT Transaction_ID, Amount, Transaction_Type, Transaction_Date, Refund_ID
FROM Transaction
WHERE Transaction_Status = 'OK'
ORDER BY Transaction_Date desc

最佳答案

据我了解,您的表格有以下 4 个主要列 -t_id、t_type、金额、r_id。

据我所知,您需要添加另一列 - '退款状态'(r_status)。对于交易类型购买,它只能具有三个值 - “N.A”。交易类型退款为“已退款”和“空”。 For this table-现在,您只想显示交易类型为购买的交易详细信息以及退款状态。其查询是 -

SELECT (@a:=t_id) as tr_id,(select if(t_id=(SELECT @b:=r_id from transaction where t_id>@a LIMIT 1),(select r_status from transaction where r_id=@b), 'N.A')) 作为交易 WHERE t_type="purchase"

的退款状态

如果可能有点令人困惑。让我解释一下,它首先会选择交易id并将其存储在'a'中,然后它会通过检查当前行的交易id是否等于下一行的退款id来选择退款状态,如果是则显示退款退款 ID 的状态,如果不是,则会显示 N.A 。

This is the result of query

关于mysql - 过滤带有退款id的购买的SQL查询条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46241875/

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