下面有表结构(屏幕)。我希望结果查询如下所示:从第一个表和第二个表开始,基于row_wid和max(req_createdOn)日期字段,获取req_attr1和req_attr_2值。我正在使用Greenplum数据库(大致与PostgreSQL 8.2兼容)。
TIA。
第二个屏幕: 如您所见,t1中有两个row_wid。对于t2中t1的每个row_wid,我们需要检查最大的req_createdOn日期并得到attr1,attr2为max(req_createdOn)。任何的想法?很抱歉没有把这个条件放在第一个屏幕上。非常感谢。
答案 0 :(得分:2)
PostgreSQL中有关于查询的特殊语法,distinct on子句:
select distinct on (t2.Row_wid)
t1.sn, t1.Geo, t1.Region,
t1.req_attr_1, t1.req_attr_2
from table1 as t1
inner join table2 as t2 on t2.Row_wid = t1.Row_wid
order by t2.Row_wid, t2.req_created_on desc