使用null和聚合函数访问SQL查询

时间:2014-06-23 16:21:38

标签: sql ms-access-2013

试图在MS Access中提出SQL查询,但是空值和聚合函数让我感到难过。任何帮助赞赏。

查询显示来自TABLE1的记录,其中EditDate(可能为null)大于TABLE2中的最大LastImportDate。

TABLE1

字段名称 - 数据类型 ReportID - 数量 EditDate - 日期/时间

TABLE2

字段名称 - 数据类型 LastImportDate - 日期/时间

谢谢。

1 个答案:

答案 0 :(得分:0)

SELECT *
FROM table1
WHERE editDate > (
    SELECT max(lastImportDate)
    FROM   table2
)

不确定转换为访问查询的确切方式,但这就是主意。

此外,如果您可以将最大日期作为单独的变量分解,这将使您获得更好的性能 - 例如:

DECLARE @maxDate DATETIME
SET @maxDate = (
    SELECT max(lastImportDate)
    FROM   table2
)

SELECT *
FROM table1
WHERE editDate > @maxDate

最后,如果你想要有一个null editDate的日期,你可以让查询将null解释为某个任意日期,如isNull(editDate,' 1900-01-01') - 这将使null editDates被解释为1900年1月1日