【问题标题】:SQL Access: Recent date per IDSQL 访问:每个 ID 的最近日期
【发布时间】:2015-01-07 10:53:04
【问题描述】:

我有四个表:User、Version、VersionOfDocument、Document。 ER 看起来像这样:(粗体 = 主键)

我希望查询为每个 documentID 显示最近的日期、versionNr 以及最后一次更改文档的人:

documentID          modifiedDate    Username                  VersionNr
1                   1/4/2014        Alfred.Heymans@test.nl     2.0
2                   2/5/2013        Alfred.Heymans@test.nl     1.0
3                   4/5/2014        John.Smith@test.nl         2.0

【问题讨论】:

  • 是mysql还是access?不能两者兼得

标签: sql ms-access group-by greatest-n-per-group


【解决方案1】:

试试这个:

SELECT VD.DocumentID, V.modifiedDate, U.Username, V.VersionNr
FROM VersionOfDocument VD 
INNER JOIN VERSION V ON VD.VersonId = V.VersionId 
INNER JOIN (SELECT VD.DocumentID, MAX(V.modifiedDate) modifiedDate
            FROM VersionOfDocument VD 
            INNER JOIN VERSION V ON VD.VersonID = V.VersionID 
            GROUP BY VD.DocumentID
           ) AS A ON VD.DocumentID = A.DocumentID AND V.modifiedDate = A.modifiedDate 
INNER JOIN USER U ON V.userID = U.userID;

【讨论】:

  • 为什么要更改问题的标签?你能100%确定是mysql不能访问吗?当标题为 SQL Access 时:每个 ID 的最近日期
  • 我收到语法错误(缺少运算符):image
猜你喜欢
  • 2018-04-16
  • 1970-01-01
  • 1970-01-01
  • 2023-03-13
  • 1970-01-01
  • 1970-01-01
  • 2022-11-25
  • 2011-10-04
  • 2019-05-11
相关资源
最近更新 更多