0
我對Access非常陌生,所以我確信這很簡單。我不確定我是否擁有最好的科目。無法從分組記錄中獲取最新記錄
我有一個Owner
和Names
表包含這樣的數據:
Owner Names
TMKFK NID ... NIDFK Last ModDate
7721011 45 45 Smith 1/18/15
7721011 137 137 Jones 2/1/15
7721012 45 45 Smith 1/18/15
我想查詢他們,讓我得到了TMKFK
在Name
表中的最新時間戳記錄。這用於從表單中查找。所以,如果我查找Smi*
我希望得到7721012
。
經過一堆環顧這個網站和其他地方,看着partition over
我總結答案必須使用子查詢,但我不能弄清楚要放哪裏。這是我卡住了:
SELECT Owner.TMKFK
FROM Owner INNER JOIN Names ON Owner.NID = Names.NIDFK
GROUP BY Owner.TMKFK, [Owner Name].Last, [Owner Name].M
WHERE (Owner.TMKFK=7721011 Or Owner.TMKFK=7721012)
AND Names.Last Like "Smith"
AND Names.ModDate=(SELECT Max(Names.ModDate) FROM Names);
失敗的原因是子查詢返回從整個表中的最大日期,而不僅僅是兩個記錄具有相同TMKFK
。 A HAVING
條款似乎沒有什麼區別。重新排序組中的字段沒有什麼區別。