我需要从两个数据集中选择最后一行。我需要main_ID
和key_ID
。但是,main_ID
通常会有多个key_ID
..除了这两行外,我还需要地址插入日期和名称。
数据来自第一个包含key_ID
和Main_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.
答案 0 :(得分:0)
您可以使用窗口/分析函数或使用聚合来执行此操作:
select t.*
from (select t.*, count(*) over (partition by main_id) as cnt
from table t
) t
where cnt = 1;