下午好! 我最近遇到了一个问题,我希望可以在你的帮助下解决。我们的系统[遗憾]在Access(2007)上运行。我有很好的SQL经验,并选择在大多数查询中使用此方法而不是设计视图。但是,这是我最近遇到的问题:
表(当然有自己的主键)包含ParticipantID和Records。由于在不同位置发生事件,该表可能包含每人多个记录。通过这些信息,我们可以跟踪每条记录是否已经在我们的系统中,因为该位置属于我们的大型"保护伞。 (内部)。为了使它看起来简单,它看起来像这样,忽略了主键,因为我们只关心参与者ID。
ParticipantID Internal 1 -1 1 -1 2 0 3 -1 3 -1 3 0 4 -1 4 0
我希望能够说出参与者的任何记录不是内部的(例如= 0),然后在此查询的结果中,将其存储为0。 因此,结果表看起来像:
ParticipantID Internal 1 -1 2 0 3 0 4 0
这有意义吗?先感谢您!
答案 0 :(得分:2)
您可以使用Max:
SELECT internal.ParticipantID, Max(internal.Internal) AS MaxOfInternal
FROM internal
GROUP BY internal.ParticipantID;
我使用查询设计窗口构建了上述内容。
答案 1 :(得分:0)
如果内部值只能为0和-1,则以下内容可能有帮助
Select ParticipantID,max(internal) from thetable
Group by ParticipantID