Sql server 2008 r2 SQL查询以列出非活动记录并列出最后一条相关记录

Sql server 2008 r2 SQL查询以列出非活动记录并列出最后一条相关记录,sql-server-2008-r2,Sql Server 2008 R2,SQL Server 2008 R2 我之前发布并收到了关于我的问题的完美答案。但现在我的客户想在查询中添加其他内容 我有两张桌子。我需要一个非活动报告(我已经能够创建),其中主表在notes表中没有相关记录达x天 现在,我需要将最后一个注释的日期添加到此查询中 以下是我的表格结构: Main Table FIELDS > file_number, sysid Notes Table FIELDS > note_date, main_id 以下是我当前的查询: SELECT *

SQL Server 2008 R2 我之前发布并收到了关于我的问题的完美答案。但现在我的客户想在查询中添加其他内容

我有两张桌子。我需要一个非活动报告(我已经能够创建),其中主表在notes表中没有相关记录达x天

现在,我需要将最后一个注释的日期添加到此查询中

以下是我的表格结构:

Main Table FIELDS > file_number, sysid

Notes Table FIELDS > note_date, main_id
以下是我当前的查询:

SELECT * 

FROM
  db.main m
  LEFT OUTER JOIN db.notes n
ON m.sysid = n.main_id 
AND CONVERT(VARCHAR(10),DATEADD (day, (n.[date]), '1800-12-28'), 101) > dateadd(dd, -14, getdate()) 
WHERE n.main_id is null 
这个怎么样:

SELECT
    *
FROM 
    db.main m
LEFT JOIN
    (
        SELECT 
            main_id
            , MAX(n.[DATE]) LastNote
        FROM
            db.notes 
        GROUP BY 
            main_id            
    ) n
    ON 
    n.main_id = m.sysid
WHERE 
    (
        n.main_id IS NULL
        OR 
        DATEDIFF(DAY, n.LastNote getdate()) > 14
    );

主记录和最后一个注释日期,其中最后一个注释的日期超过14天,或者如果没有注释,则最后一个注释日期为空。

是否有任何错误?问题是我需要将最后一个注释日期添加为一列。因此,如果主记录有100个音符,而在过去14天内没有一个音符(上面给了我一个列表),那么最后一个音符的日期是什么。