如何选择(ID)但仍然显示最新(Mod.Date)的不同(名称)以消除(名称)列中的重复项。我认为这很容易,但我从来没有这样做过。谢谢
答案 0 :(得分:1)
您需要一个子查询,为每个ID选择最新日期:
SELECT t.ID, max(t.`mod.date`) last_date
FROM YourTable t
GROUP BY t.ID
此子查询必须使用ID和日期链接到原始表。
SELECT t.ID,t.Name,t.`mod.date`
FROM YourTable t
JOIN (SELECT t.ID, max(t.`mod.date`) last_date
FROM YourTable t
GROUP BY t.ID) tmp ON tmp.ID=t.ID AND tmp.`mod.date`=t.`mod.date`
这为您提供了所有ID的ID和(最新)名称。
更新:在Access中应该使用的另一种可能性是使用ALL
比较:
SELECT t.ID,t.Name,t.`mod.date`
FROM YourTable t
WHERE t.`mod.date` >= ALL (SELECT max(t1.`mod.date`)
FROM YourTable t1
WHERE t1.ID=t.ID GROUP BY t1.ID)