SQL服务器加入加入3个表给迄今最高出多个值

问题描述:

我有3个表(A,B,C),它们被ACC_NO(a.acc_no,b.acc_no,c.acc_no)链接SQL服务器加入加入3个表给迄今最高出多个值

和我想加入他们的方式,以获得最高的行值:

a.acc_no a.seq_no b.open_dt b.close_dt c.chg_dt 
-------- -------- --------- ---------- ---------- 
100001  500   2016-07-01 2016-07-16 2016-09-02 
100001  500   2016-07-01 2016-07-16 2016-09-05 
100001  510   2016-07-17 2016-09-30 2016-09-02 
100001  510   2016-07-17 2016-09-30 2016-09-05 
100002  502   2016-09-02 2016-09-27 2016-09-03 
100003  503   2016-09-03 2016-09-26 2016-09-25 

我如何使它看起来像这样:

a.acc_no a.seq_no b.open_dt b.close_dt c.chg_dt 
-------- -------- --------- ---------- ---------- 
100001  510   2016-07-17 2016-09-30 2016-09-05 
100002  502   2016-09-02 2016-09-27 2016-09-03 
100003  503   2016-09-03 2016-09-26 2016-09-25 

基本上无视最低a.seq_no其中ACC_NO是一样的,也显示最高的chang_dt宝可以从两个我让出来。

我已经尝试了一切,但我要么不明白,要么当我加入表格时做错了什么。

为了澄清表:

TABLE a TABLE b TABLE c 
------- ------- ------- 
acc_no  acc_no  acc_no 
seq_no  open_dt chang_dt 
      close_dt 

所有3个表由ACC_NO

+0

澄清你的三个表的样子你的问题。 –

+0

你有没有尝试过任何查询? –

尝试连接到使用

SELECT a.acc_no, 
     Max(a.seq_no), 
     Max(b.open_dt), 
     Max(b.close_dt), 
     Max(c.chang.dt) 
FROM a 
     JOIN b 
     ON (a.acc_no = b.acc_no) 
     JOIN c 
     ON (b.acc_no = c.acc_no) 
GROUP BY a.acc_no