gpt4 book ai didi

mysql - 从每个 user_id 获取最旧的时间戳

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

“销售”数据库

每个“sold_by”实质上都是进行该特定销售的人。我的目标是获取按“sold_by”分组的最新“sale_date”,为每个唯一的“sold_by”记录返回一条记录(该记录作为整数存储在我的数据库中,但这是一个示例)

╔═════════╦═════════╦══════════════════╗
║ sale_id ║ sold_by ║ sale_date ║
╠═════════╬═════════╬══════════════════╣
║ 0 ║ PETER ║ 01/01/2017 00:00 ║
║ 1 ║ JOHN ║ 01/01/2017 00:00 ║
║ 2 ║ PETER ║ 30/03/2017 00:00 ║
║ 3 ║ JOHN ║ 03/02/2017 00:00 ║
║ 4 ║ SIMON ║ 04/02/2017 00:00 ║
║ 5 ║ JOHN ║ 05/01/2017 00:00 ║
║ 6 ║ SIMON ║ 26/01/2017 00:00 ║
║ 7 ║ PETER ║ 07/01/2017 00:00 ║
║ 8 ║ SIMON ║ 28/01/2017 00:00 ║
║ 9 ║ JOHN ║ 09/01/2017 00:00 ║
║ 0 ║ PETER ║ 20/01/2017 00:00 ║
╚═════════╩═════════╩══════════════════╝

account_manager_sellers 的数据库示例(请注意,ID 与上表中的 sold_by 匹配。

╔════╦══════════════╗
║ id ║ company_name ║
╠════╬══════════════╣
║ 0 ║ PETER ║
║ 1 ║ JOHN ║
║ 2 ║ SIMON ║
╚════╩══════════════╝

下面的示例可以工作,但没有按预期工作,它没有获取最小或最大日期,但似乎从数据库中间返回一个随机日期。

SELECT `sold_by`, `sale_date`
FROM `sales`
NATURAL JOIN (
SELECT `sold_by`, MAX(`sale_date`) AS entry_date
FROM `sales`
GROUP BY `sold_by`
) AS tmin
JOIN `account_manager_sellers` USING (`id`)
WHERE `sale_date` < '2017-03-31 00:00:00';

所以最终,我需要为每个唯一的 sold_by 获取一条记录,但它必须是最近的日期。因此,从上面的第一个表中,它将返回:

+---+-------+------------------+
| 2 | PETER | 30/03/2017 00:00 |
+---+-------+------------------+
| 3 | JOHN | 03/02/2017 00:00 |
+---+-------+------------------+
| 4 | SIMON | 04/02/2017 00:00 |
+---+-------+------------------+

P.S 我还尝试从子查询中删除 MAX(sale_date),并将其替换为 ORDER BY sale_date LIMIT 1 (但显然它只返回一个鞋底)结果)

最佳答案

您想要的基本查询可能如下所示:

SELECT p1.*
FROM plans p1
INNER JOIN
(
SELECT seller_id, MAX(plan_written) AS entry_date
FROM plans
GROUP BY seller_id
) p2
ON p1.seller_id = p2.seller_id AND
p1.plan_written = p2.entry_date;

您还有另一个到 account_manager_sellers 表的连接,但由于我看不到您的表定义,不知道您的列等,因此我不会尝试回答该问题.

您可能不希望使用自然联接,因为它们可能会混淆查询中的联接条件。

关于mysql - 从每个 user_id 获取最旧的时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50153519/

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