2014-12-03 81 views
0

我需要从两个数据集中选择最后一行。我需要main_IDkey_ID。但是,main_ID通常会有多个key_ID ..除了这两行我需要地址插入日期和名称。选择具有唯一ID的行

数据来自表中的一个与key_IDMain_ID并命名第二接合表具有main_ID地址和insertion_date ...第二表没有key_ID

一个例子:

main_ID Key_ID address insertion_date name 
---------------------------------------------------  
123  200 26t  10/09   Hale T. 
123  200 26h  10/10   Hale T. 
567  200 26h  10/10   Hale T. 

我想将所有列显示的最后一行Key_ID拉下来。

所以我最后的输出应显示:

main_ID Key_ID address insertion_date name 
-------------------------------------------------- 
567  200 26h  10/10   Hale T. 
+2

哪个RDBMS您使用的?您可以使用'main_ID desc'通过'top'或'limit'命令。 – sgeddes 2014-12-03 23:23:39

回答

0

为此,您可以使用窗口/解析功能,或者使用聚合:

select t.* 
from (select t.*, count(*) over (partition by main_id) as cnt 
     from table t 
    ) t 
where cnt = 1;