使用SQL查找列表中项目的第一个日期

时间:2015-12-30 17:05:37

标签: sql date ms-access duplicates ms-access-2010

我正在根据需要搜索人口统计信息的客户帐户报告在Access 2010中构建本地数据库。每周都会生成一个新报告,并将结果添加到列表中,但是在列表中每周都会复制尚未找到的帐户。我能够创建显示仅显示在一个报表上的帐户的查询,以及用于显示显示在多个报表上的帐户的查询。但我现在尝试创建一个查询,该查询将显示帐户何时首次添加到列表中。

我正在查看的列名称与此类似:
accountNum - 帐号
custName - 客户的名称
reportDate - 要搜索帐户的日期

最终结果将是一个表格,显示(例如)出现在多个报告中的所有帐户,但首先出现在12月1日,12月8日,12月15日等等...

思想?

2 个答案:

答案 0 :(得分:0)

这是一个聚合查询:

select accountNum, custName, min(reportDate)
from reports
group by accountNum, custName;

答案 1 :(得分:0)

这可以为您提供多次出现的所有帐户的列表以及报告的第一个日期。

SELECT
    accountNum,
    custName,
    MIN(reportDate) AS firstReportDate
FROM
    MyTable
GROUP BY
    accountNum,
    custName
HAVING
    COUNT(*) > 1