我有两张桌子personal_details personal_details 和post_details post_details
第一张表格包含员工的所有个人详细信息,第二张表格包含最新的转帐详细信息
我想加入这两个表,并根据max(from_date)列获取最新的转移详细信息
尝试的查询提供了所有转移详细信息
select pe.emp_id,pe.full_name,po.place,po.from_date from personal_details pe,post_details po
where pe.emp_id=po.emp_id
请帮忙。
答案 0 :(得分:1)
一个选项使用ROW_NUMBER
:
SELECT emp_id, full_name, place, from_date
FROM
(
SELECT pe.emp_id, pe.full_name, po.place, po.from_date,
ROW_NUMBER() OVER (PARTITION BY pe.emp_id ORDER BY po.from_date DESC) rn
FROM personal_details pe
INNER JOIN post_details po
ON pe.emp_id = po.emp_id
) t
WHERE rn = 1