我有一个表,其中包含以下格式的数据,但是我希望能够创建一个查询,以检查参考号是否重复,并且仅返回带有最新date_issued的条目。
ref_no name gender place date_issued
xgb/358632/p John Smith M London 02.08.2016
Xgb/358632/p John Smith M London 14.06.2017
Rtu/638932/k Jane Doe F Birmingham 04.09.2017
The result from the query should be;
ref_no name gender place date_issued
Xgb/358632/p John Smith M London 14.06.2017
Rtu/638932/k Jane Doe F Birmingham 04.09.2017
是否有一个相当简单的解决方案?
答案 0 :(得分:0)
假设日期列的类型为date
或timestamp
select distinct on(ref_no) * from tablename order by refno,date desc;
之所以如此,是因为distinct on
禁止在括号中包含重复表达式的行。