SQL 服务器:具有最短日期的回头客

SQL Server : returning customers with minimum dates

我正在尝试 运行 一个查询,该查询将 return 昨天创建了第一个申请的所有客户 ID。我一直在想如何使用 MIN 函数和 HAVING.

WHERE 子句中的声明用于将日期与昨天进行比较,但我一直卡在如何写它以显示公司昨天有 FIRST/MINIMUM 开始日期。

示例如下,以添加一些颜色:

SELECT
    P.CUSTOMERID,
    M.CREATEDDATE
FROM 
    DBO.MATCH M
INNER JOIN 
    DBO.POSITION P ON M.REQUISIIONID = P.REQUISITIONID
WHERE
    DATEADD(d, (DATEDIFF(d, 0, m.CREATEDDATE)), 0) = DATEADD(d, (DATEDIFF(d, 0, GETDATE() - 1)), 0)

我想你想要 group by 客户,并使用 having 子句进行过滤:

select p.customerid, min(m.createddate) min_createddate
from dbo.match m
inner join dbo.position p on m.requisiionid = p.requisitionid
group by p.customerid
having min(m.createddate) = dateadd(day, -1, convert(date, getdate())