好吧,为了按日期获得最后一个条目,我已经完成了该查询:
select cle
from ( select cle, clepersonnel, datedebut, row_number()
over(partition by clepersonnel order by datedebut desc) as rn
from periodeoccupation) as T
where rn = 1
这个是工作,并按日期给我最后一个条目,到目前为止我还好。
但是我第一次使用子查询时,我必须使用多个连接使查询更复杂。但我无法弄清楚如何在内连接中创建子查询。
这是我尝试的:
select personnel.prenom, personnel.nom
from personnel
inner join
( select cle, clepersonnel, datedebut, row_number()
over(partition by clepersonnel order by datedebut desc) as rn
from periodeoccupation) as T
ON personnel.cle = periodeoccupation.clepersonnel
where rn = 1
但它不起作用!
如果您有任何想法或提示......谢谢!
答案 0 :(得分:1)
只需更改
ON personnel.cle = periodeoccupation.clepersonnel
到
ON personnel.cle = T.clepersonnel
查询连接已使用别名,并且您已引用别名,因为别名查询中的表超出了外部语句中的范围。