SQL 左外连接但只提取最大日期

SQL Left Outer Join but only pull max date

我注意到有人问过这个问题的变体,但 none 似乎对我有用(或者我看起来不对)。我还在学习 SQL 所以请多多包涵。

我有两张桌子要加入。我想要来自 Table C 的所有记录和来自 Table P 的匹配记录。所以我假设一个左外连接?

我想要两个表中的所有列,它们将由 Table C 中的 "PartNo" 和 Table P 中的 "ItemNo" 连接。

对我来说棘手的部分是,随着这个加入,我希望只根据 Table P 中的日期 (PDate) 提取最新的 "ItemNo"。

提前致谢!

这可以通过外部应用来完成

select *
    from TableC c
    outer apply (
        select top 1 *
            from TableP
                where itemno = c.partno
                order by pdate desc
    ) p