MS-ACCESS,加入 SQL select
MS-ACCESS, JOIN SQL select
我正在尝试在 MS-ACCESS 2013 中构建一个数据库应用程序。在这个应用程序中,我需要一个查询来显示 NotificationsOfDelay 中的所有条目以及该项目的最后一个 NotificationOfDelayStatus。 Last 表示 biggest/latest 时间戳。我已经尝试了几个用谷歌搜索 SQL 的查询,但我似乎无法正确解决。在我的代码下方
SELECT tblNotificationOfDelay.ID, tblNotificationOfDelayStatus.NotificationOfDelayID
FROM tblNotificationOfDelay
INNER JOIN
(
SELECT TOP 1 tblNotificationOfDelayStatus.ID
FROM tblNotificationOfDelayStatus
WHERE tblNotificationOfDelayStatus.NotificationOfDelayID = tblNotificationOfDelay.ID
ORDER BY tblNotificationOfDelayStatus.TimeStamp DESC
);
有人可以帮忙吗?
我建议使用相关子查询:
SELECT nod.ID,
(SELECT TOP 1 nods.ID
FROM tblNotificationOfDelayStatus as nods
WHERE nods.NotificationOfDelayID = nod.ID
ORDER BY nods.TimeStamp DESC
)
FROM tblNotificationOfDelay as nod;
我不能 100% 确定关联条件是否正确。但是相关的子查询似乎是你想要做的。
我正在尝试在 MS-ACCESS 2013 中构建一个数据库应用程序。在这个应用程序中,我需要一个查询来显示 NotificationsOfDelay 中的所有条目以及该项目的最后一个 NotificationOfDelayStatus。 Last 表示 biggest/latest 时间戳。我已经尝试了几个用谷歌搜索 SQL 的查询,但我似乎无法正确解决。在我的代码下方
SELECT tblNotificationOfDelay.ID, tblNotificationOfDelayStatus.NotificationOfDelayID
FROM tblNotificationOfDelay
INNER JOIN
(
SELECT TOP 1 tblNotificationOfDelayStatus.ID
FROM tblNotificationOfDelayStatus
WHERE tblNotificationOfDelayStatus.NotificationOfDelayID = tblNotificationOfDelay.ID
ORDER BY tblNotificationOfDelayStatus.TimeStamp DESC
);
有人可以帮忙吗?
我建议使用相关子查询:
SELECT nod.ID,
(SELECT TOP 1 nods.ID
FROM tblNotificationOfDelayStatus as nods
WHERE nods.NotificationOfDelayID = nod.ID
ORDER BY nods.TimeStamp DESC
)
FROM tblNotificationOfDelay as nod;
我不能 100% 确定关联条件是否正确。但是相关的子查询似乎是你想要做的。