Mysq/Mariadb按ID获取IN Select组中某些ID的最新条目

5kgi1eie  于 2022-11-08  发布在  其他
关注(0)|答案(1)|浏览(142)

你好,我有一个包含一些id和值的表。
例如:

SELECT instrumentid, value  from `mytable` where instrumentid in (12,11, 14,15);

id, instrumentid, recorddate, value
33  12            2022-10-05   55
34  11            2022-10-05   33
30  14            2022-10-05   13
29  12            2022-10-03   12
28  11            2022-10-03   53
40  14            2022-10-03   4
44  15            2022-10-03   4

作为结果,我想要或更好地解释,只有最后的newst条目为instrumentid

instrumentid, value 
    12 55
    11 33
    14 13
    15 4

感谢并问候
运行最新的mariadb 10.9.3

cngwdvgl

cngwdvgl1#

您可以使用ROW_NUMBER()来标识每个商品的最后一行。
例如:

select *
from (
  select t.*,
    row_number() over(partition by instrumentit order by recorddate desc) as rn
  from mytable t
  where instrumentid in (12,11, 14,15)
) x
where rn = 1

相关问题