mysql 在最小值后获取最大值

资源管理器

在 mysql 表中,我想获得最小值之后的最大值。

SELECT * from `table`
result:

id  date                 value
--  -------------------  -----
1   2021-03-03 13:14:05  1.15
2   2021-03-03 13:14:06  1.32
3   2021-03-03 13:14:07  1.40
4   2021-03-03 13:14:08  1.38
5   2021-03-03 13:14:01  1.55
6   2021-03-03 13:14:02  1.60
7   2021-03-03 13:14:03  1.30
8   2021-03-03 13:14:04  1.10

但我必须按日期排序,

SELECT * from `table` ORDER by date
result:

id  date                 value
--  -------------------  -----
5   2021-03-03 13:14:01  1.55
6   2021-03-03 13:14:02  1.60 # this is not target row.
7   2021-03-03 13:14:03  1.30
8   2021-03-03 13:14:04  1.10 # min value
1   2021-03-03 13:14:05  1.15
2   2021-03-03 13:14:06  1.32
3   2021-03-03 13:14:07  1.40 # this is TARGET row.(max after min)
4   2021-03-03 13:14:08  1.38

按日期排序后,我想获得最小值(1.10)之后的最大值(1.40)

id 6,值 1.60 不是目标行。因为这个最大值(1.60)不是在最小值(1.10)之后

id 3,值 1.40 是目标行。因为这个最大值(1.40)在最小值(1.10)之后,最小值之前的所有值都应该被忽略。我想得到这一行(id 3,值 1.40)

我需要哪个 sql 查询?

小狐狸

你可以运行这样的东西:

select * from t
where vl = (
  select max(vl) from t
  where dt > (
    select dt from t where vl = (select min(vl) from t)
  )
);

+------+---------------------+------+
| id   | dt                  | vl   |
+------+---------------------+------+
|    3 | 2021-03-03 13:14:07 | 1.40 |
+------+---------------------+------+

这个想法是t首先使用select min(vl) from t.

然后,当我们使用select dt from t where vl = (select min(vl) from t).

然后,我们使用以下方法获得该日期之后显示的最大值:

select max(vl) from t
  where dt > (
    select dt from t where vl = (select min(vl) from t)
  )

然后,我们得到具有该最大值的行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在MySql中求和后获取最小值和最大值

MySQL如何在求和一列后找到最大值和最小值

使用Group BY通过一个MySQL查询获取最小值和最大值

MySQL查询以限制最大值和最小值

MySQL从最大值中选择最小值

使用优先级字段获取已连接的mysql表上的最大值/最小值

MySQL在两个(或多个)给定值中选择最小值/最大值

MySQL:查询字段的最小值和最大值之间的缺失行

如何从此查询mysql 5.7计算最小值,最大值和平均值

在php和namevalue中显示最小值和最大值mysql?

mysql插入按日期分组的最大值最小值

仅用于最大值和最小值的 MySQL 索引

mysql子查询中的最小值和最大值

计算MySQL8中重复条目组的最大值和最小值之和

Mysql - 与每天相反,每月的最小值和最大值?

设置将使用 Python 插入 MySQL 的温度和湿度的最大值和最小值

用mysql中的最大值和最小值更新字段

MySQL:根据两个不同的ENUM值从不同的行中选择最小值和最大值

将多个子行合并为一行MYSQL,而无需硬编码或最小值/最大值

mysql。滑动日期和时间,设置最小值为签入,最大值为签出

MySQL NFL QB 评级 - 如果总和超出设定范围,可以设置最小值和最大值吗?

从MYSQL结果数据获取最大值

mysql获取列名的最大值

Mysql 随机获取但尝试获取最小值

在MYSQL中获取另一列的最小值/最小值

如何使用mysql从多个列中获取最小值/最小值,但忽略0作为最小值/最小值?

如何在mysql中联合后获得最小值?

从MySQL中的表中获取最大值,不同值

如何显示一列的最小值并使用同一列的最大值来过滤mysql中的其他属性?