需要列出“ALL”凭证编号(k002)及其最新维护日期(lm01_s)和status_code。下面的代码查找整个表的最后日期以及该日期的任何记录。这不是我需要的。只有一张桌子。如果我从等式中删除status_code,这很容易。
SELECT k002, lm01_s, status_code
FROM stat_trans
WHERE (lm01_s = ANY (SELECT MAX(lm01_s) FROM stat_trans)) ORDER BY lm01_s;
我也试过这个......
SELECT k002, lm01_s, advice_code
FROM romis_stat_trans
WHERE lm01_s IN (((SELECT Max(lm01_s) FROM romis_stat_trans GROUP BY k002)));
我尝试过很多东西,但我忘了我曾尝试过的东西。一切都是死路一条。
答案 0 :(得分:1)
使用where
子句中的子查询仅返回lm01_s等于max lm01_s的记录。我发现使用表别名很重要,否则Access会混淆字段。
select k002,
lm01_s,
status_code
from stat_trans
where lm01_s=(select max(sc.lm01_s)
from stat_trans as sc
where sc.k002 = stat_trans.k002)