【发布时间】:2025-11-28 05:10:01
【问题描述】:
块引用
我正在从 Access 2010 中的 2 个单独的表中加入日期字段。在“加入属性”中,我将包含左侧表中的所有记录,并且仅包含与右侧表匹配的记录。出于某种原因,它将其视为常规连接,其中仅出现两个表中匹配的记录。示例:左表在 2015 年 5 月 - 5 月 1 日 - 2015 年 5 月 31 日的每一天都有 31 条记录。右表只有 19 条记录,日期在 5 月加上我想在匹配时查看的其他字段。当我运行查询时,它只返回 19 条记录,而不是我期望的 31 条记录。我已经确认这两个表都是针对日期格式化的,甚至尝试使用“Clng”更改数据类型以确认记录匹配。我正在使用查询的“设计”视图 - 我对 Sql 或 Vba 一点也不擅长。我搜索过的所有网站都使用 SQL 引用了这个问题..
下面的 SQL 供那些可以使用它的人使用:
SELECT
[Raven Download 10 table].Region
, [Raven Download 10 table].Market
, [Raven Download 10 table].Location
, [Date table].dDate
, [Raven Download 10 table].SessEndDate
, [Raven Download 10 table].MaxOfDwnldStat
FROM
[Raven Download 10 table]
RIGHT JOIN
[Date table]
ON
[Raven Download 10 table].SessEndDate = [Date table].dDate
WHERE
((([Raven Download 10 table].Location)="hay river"));
【问题讨论】:
-
设为
LEFT JOIN?左连接将至少保留“左”表中的所有记录。但是,如果您的匹配项在您要加入的表中多次出现,您最终可能会得到更多记录。 -
你有一个 where 条件:WHERE ((([Raven Download 10 table].Location)="hay river"));这将过滤您的预期记录
标签: ms-access