从两个不同的表中检索最大日期记录

时间:2015-08-19 11:07:17

标签: sql

表1 - 帐户

ID  account  date
-----------------------
1   SBI      01-10-2005
2   SBI      05-11-2014
3   AXIS     02-06-2003
4   AXIS     01-08-2015

表2 - 用户

ID  account    date          user
-----------------------------------
1   SBI        01-10-2005    amit  
2   SBI        05-11-2014    rahul  
3   AXIS       02-06-2003    raghu  
4   AXIS       01-08-2015    sumit

从上面的两个表中,需要的最终输出是

ID  account   date          user
-----------------------------------
2   SBI       05-11-2014    rahul     
4   AXIS      01-08-2015    sumit

1 个答案:

答案 0 :(得分:0)

您可以通过按帐户对第一个表中的值进行分组来拉取每个帐户的最大日期。然后,一旦有了最大日期,您只需要加入回用户表即可获得相应的帐户。

select tblUser.*
from
(
    select account, max(date) as maxDate
    from tblAccount
    where account in ('SBI','AXIS') 
    group by account
) maxDates
left join tblUser u on maxDates.account = tblUser.account