首页 > 解决方案 > 如何从 value1 和 value2 字段忽略 value2 字段的表中获取 value1 的最大值

问题描述

我有 column1 = date、column2 = A/B、column3 = id 的表。我想要结果,其中与 Id 比较的最新日期应该是 column2 中的 B,如果 A 则忽略

桌子

C1        C2    C3
10/6/19   A      1
12/6/19   B      1
13/6/19   A      2
09/6/19   A      3
03/6/19   B      1
04/6/19   B      2
12/6/19   B      4
03/6/19   A      5
06/6/19   B      3

预期结果

C3 1 - Valid . Because last value of latest date is B
C3 4 - Valid . Because last value of latest date is B
C3 3 - Invalid. Because last value of latest date is A

标签: mysqlsql

解决方案


使用相关子查询

演示

select * from t1 a
where c1 =(select max(c1) from t1 b where a.c3=b.c3 )
and c2='B'

输出:

c1         c2   c3
2012-06-19  B   1
2012-06-19  B   4

推荐阅读