gpt4 book ai didi

mysql - 按日期时间计算的最后两条记录的差异值

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

我有一个包含 id、item_id、value (int)、run (datetime) 的表,我需要在最后两个run之间选择value diff> 每个 *item_id*。

最佳答案

SELECT item_id, ABS(value1 - value2) AS diff
FROM ( SELECT h.item_id, h.value AS value1, h2.value AS value2
FROM ( SELECT id, item_id, value
FROM table_name
GROUP BY item_id
ORDER BY run DESC) AS h
INNER JOIN ( SELECT id, item_id, value
FROM table_name
ORDER BY run DESC) AS h2
ON h.item_id = h2.item_id AND h.id != h2.id
GROUP BY item_id) AS h3

我相信这应该可以解决您的问题。只需将 table_name 替换为正确的名称即可。

解释:
基本上,我以 run DESC 顺序将表与自身连接起来,根据 item_id 和 id 连接它们。然后我再次对它们进行 GROUP BY 以删除潜在的第 3 个等情况。最后我通过 ABS(value1 - value2) 计算它们之间的差异。

关于mysql - 按日期时间计算的最后两条记录的差异值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10314953/

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