这个问题可能有一个简单的解决方案,但不幸的是,我无法弄清楚。
我有两个表:表 A 和表 B
Table A Table B
------------------- ------------------------------
Id NoOfItems Id itemNo deliveredDate
X1 3 X1 1 2017-07-01
X1 2 2017-07-02
X1 3 2017-07-03
所以我需要将每个Id的最大deliveredDate添加到表A中,但前提是表B中的交付项目数等于表A中的NoOfItems。
到目前为止,我已经写了这个查询:
SELECT *
FROM A
OUTER APPLY
(
SELECT TOP 1 *
FROM B
WHERE A.Id =B.Id
ORDER BY
B.DeliveredDate DESC
) s
where A.NoOfItems= (select count(1) from B )
)