在表上写入配置单元查询以选择列中具有最大值的行有一个包含以下数据的表,例如:
key value updated_at
1 "a" 1
1 "b" 2
1 "c" 3
需要选择上次更新的行。当前使用以下逻辑
select tab1.* from table_name tab1
join select tab2.key , max(tab2.updated_at) as max_updated from table_name tab2
on tab1.key=tab2.key and tab1.updated_at = tab2.max_updated;
有没有其他更好的方法来实现这一点?
1条答案
按热度按时间omvjsjqw1#
如果这是真的
updated_at
对于该表来说是唯一的,那么下面可能是一种更简单的方法来获取您要查找的内容:如果可能的话
updated_at
由于某些原因,要成为非唯一的,可能需要调整ORDER BY
以你所希望的方式打破任何联系的逻辑。