我是Access和VBA的新手,我在Access 2007中进行编码并尝试构建一个从两个不同的表中提取记录的查询,表中的记录每次修订时都会分配修订号。我可以让查询运行并显示记录,但是我试图仅仅提取""每条记录的最新版本。我已经尝试使用在SQL视图中编写的MAX()子句来获取最大修订版号(I.E. rev1 rev2 rev3)以及修订的最新日期(以获取修订的最新日期)。在两次尝试中,Access都会显示所提取记录的所有修订。我是否无法仅在Access中提取最新版本?以下是我试图使用的SQL代码,
SELECT MAX(tblNascoRevision.tbRevisionNum) AS tbRevisionNum, tblNasco.tbNCRNumber, tblNasco.tbGroupName, tblNasco.tbGroupNumber, tblNasco.tbAccountManager, tblNasco.tbSERNumber, tblNasco.cboNCRAnalyst, tblNasco.tbBAReceivedDate, tblNasco.tbBAAcceptedDate, tblNasco.tbRequestTitle, tblNasco.tbSubmittedToMDSS, tblNasco.tbImplementationDate, tblNasco.tbRejectToSales1, tblNasco.tbReceiveFromSales1, tblNasco.tbRejectToSales2, tblNasco.tbReceiveFromSales2, tblNasco.tbComments, tblNascoRevision.tbSentToMDSS, tblNascoRevision.cboRevisionCodes
FROM tblNasco, tblNascoRevision
WHERE tblNasco.LocalID=tblNascoRevision.NascoLocalID
GROUP BY tblNasco.tbNCRNumber, tblNasco.tbGroupName, tblNasco.tbGroupNumber, tblNasco.tbAccountManager, tblNasco.tbSERNumber, tblNasco.cboNCRAnalyst, tblNasco.tbBAReceivedDate, tblNasco.tbBAAcceptedDate, tblNasco.tbRequestTitle, tblNasco.tbSubmittedToMDSS, tblNasco.tbImplementationDate, tblNasco.tbRejectToSales1, tblNasco.tbReceiveFromSales1, tblNasco.tbRejectToSales2, tblNasco.tbReceiveFromSales2, tblNasco.tbComments, tblNascoRevision.tbSentToMDSS, tblNascoRevision.tbRevisionNum
ORDER BY tblNasco.tbGroupName, tblNascoRevision.tbRevisionNum DESC;
答案 0 :(得分:0)
我会解决它创建两个查询:
查询1:仅获取tblNascoRevision的最大记录集
SELECT tbRevisionNum, NascoLocalID, tbSentToMDSS, cboRevisionCodes
FROM tblNascoRevision rev,
(SELECT MAX(tblNascoRevision.tbRevisionNum) AS tbRevisionNum, NascoLocalID
FROM tblNascoRevision
GROUP BY NascoLocalID) maxresults
WHERE rev.tbRevisionNum = maxresults.tbRevisionNum
AND rev.NascoLocalID= maxresults.NascoLocalID;
查询2:使用tblNasco加入Query1
SELECT Query1.tbRevisionNum, tblNasco.tbNCRNumber, tblNasco.tbGroupName, tblNasco.tbGroupNumber, tblNasco.tbAccountManager, tblNasco.tbSERNumber, tblNasco.cboNCRAnalyst, tblNasco.tbBAReceivedDate, tblNasco.tbBAAcceptedDate, tblNasco.tbRequestTitle, tblNasco.tbSubmittedToMDSS, tblNasco.tbImplementationDate, tblNasco.tbRejectToSales1, tblNasco.tbReceiveFromSales1, tblNasco.tbRejectToSales2, tblNasco.tbReceiveFromSales2, tblNasco.tbComments, Query1.tbSentToMDSS, Query1.cboRevisionCodes
FROM tblNasco, Query1
WHERE tblNasco.LocalID=Query1.NascoLocalID
ORDER BY tblNasco.tbGroupName, Query1.tbRevisionNum DESC;