MySQL 找到先前值较低的峰值?

MySQL Find Peak Values Where Previous Value Is Lower?

我有一个整数字段和一个日期时间字段。是否有可以找到所有峰值或从低到高过渡的查询?我不认为我可以简单地使用 GROUP BY 因为日期时间值太不一致了。 'peaks' 可以随时发生(分钟、小时、天、月等)。

例如,我需要图像中用红色圈出的所有值。

您需要值大于“以下”值的数据点。您可以使用 lead()。假设你的 table 有列 datevalue,你会做:

select *
from (
    select t.*, lead(value) over(order by date) lead_value
    from mytable t
) t
where value > lead_value