要保留Hive表中的最新记录,可以使用以下代码示例来解决问题:
方法1:使用子查询和窗口函数
SELECT *
FROM (
SELECT *,
ROW_NUMBER() OVER (PARTITION BY id ORDER BY date_column DESC) AS rn
FROM your_table
) t
WHERE rn = 1;
方法2:使用子查询和MAX函数
SELECT t1.*
FROM your_table t1
JOIN (
SELECT id, MAX(date_column) AS max_date
FROM your_table
GROUP BY id
) t2 ON t1.id = t2.id AND t1.date_column = t2.max_date;
以上两种方法都会根据id分组,并按照日期列(假设为date_column)降序排序。然后选择每个分组中的第一行,即最新记录。