gpt4 book ai didi

mysql - 如何获取一段时间内创建首条数据的用户数据?

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

如何获取过去2个月创建第一个钱包的人所有钱包中的金额?

我创建了一个 SQL fiddle 来说明这些表。欢迎您使用它来查看和运行 SQL。 My table schema and sample data

表架构和示例数据的描述如下。

我有 2 个表。第一个称为 wallet,包含 wallet_idwallet_owner_idcreate_date 列。我们有多个钱包主,每个钱包主可以有多个钱包。 create_date 表示创建钱包的时间。 wallet_idwallet_owner_id 都是唯一的。

例如

create table wallet(wallet_id int,wallet_owner_id varchar(20),create_date date);
insert into wallet values
(100000010,'AAAAAAAAAAAAAAA','2017-09-02'),
(100000034,'AAAAAAAAAAAAAAA','2018-06-02'),
(100000132,'BBBBBBBBBBBBBBB','2017-05-03'),
(100001110,'CCCCCCCCCCCCCCC','2018-05-02'),
(100000345,'CCCCCCCCCCCCCCC','2018-05-06');

第二个表称为 deposit,包含 wallet_owner_idcheck_dateamount_in_all_wallets 列。 ckeck date

中只有一行表示 wallet owner

例如

create table deposit (amount_in_all_wallets int,wallet_owner_id varchar(20),check_date date);
insert into deposit values
(45,'AAAAAAAAAAAAAAA','2018-06-01'),
(89,'BBBBBBBBBBBBBBB','2018-06-01'),
(97,'CCCCCCCCCCCCCCC','2018-06-01'),
(11,'CCCCCCCCCCCCCCC','2018-06-02');

因为 AAAAAAAAAAAAAAA 和 BBBBBBBBBBBBBBB 都在过去 2 个月之前创建了钱包,所以我的结果应该是

amount_in_all_wallets|wallet_owner_id|check_date|first_create_date
97 |CCCCCCCCCCCCCCC|2018-06-01|2018-05-02
11 |CCCCCCCCCCCCCCC|2018-06-02|2018-05-02

查询:

SELECT d.amount_in_all_wallets, d.wallet_owner_id, d.check_date, min(d.create_date) as first_create_date
FROM deposit d
JOIN wallet w ON d.wallet_owner_id = w.wallet_owner_id
WHERE w.create_date > '2018-05-01'

这行不通,因为我找不到一种方法来整合“在过去 2 个月内创建了他们的第一个钱包”的想法。我该怎么做?

最佳答案

您可以为 INNER JOIN 添加另一个检查所需日期的条件:

SELECT amount_in_all_wallets,
w.wallet_owner_id,
check_date,
MIN(w.create_date) AS first_create_date
FROM wallet w
JOIN deposit d ON w.wallet_owner_id = d.wallet_owner_id
AND DATE_SUB(NOW(), INTERVAL 2 MONTH) <=
(SELECT MIN(create_date)
FROM wallet
WHERE wallet_owner_id = w.wallet_owner_id)
GROUP BY amount_in_all_wallets,
w.wallet_owner_id,
check_date

关于mysql - 如何获取一段时间内创建首条数据的用户数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50923496/

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