Sql server 没有数据的x天DB查询

Sql server 没有数据的x天DB查询,sql-server,tsql,Sql Server,Tsql,我有一个表包含多个记录的名称和DT,我需要一个查询,以检查名称没有任何新的记录在过去2天的基础上的DT,如何创建 Name DT ABC 2017-09-17 06:02:23.000 ACD 2017-09-15 06:02:23.000 在不知道您的表模式或示例数据的情况下,这是对查询的胡乱猜测,但您想要的应该是可以实现的。如果要使用UTC时间,也可以使用 编辑:更新以包括 编辑2:用CTE替换GETDATE where子句,以排除在过去2天内具有dt的名称 W

我有一个表包含多个记录的名称和DT,我需要一个查询,以检查名称没有任何新的记录在过去2天的基础上的DT,如何创建

Name     DT
ABC      2017-09-17 06:02:23.000
ACD      2017-09-15 06:02:23.000

在不知道您的表模式或示例数据的情况下,这是对查询的胡乱猜测,但您想要的应该是可以实现的。如果要使用UTC时间,也可以使用

编辑:更新以包括

编辑2:用CTE替换GETDATE where子句,以排除在过去2天内具有dt的名称

WITH CTE AS (
SELECT
    name
FROM table
WHERE dt > GETDATE()-2
)

SELECT
    name,
    dt
FROM (
    SELECT
        name,
        dt,
        ROW_NUMBER() OVER (PARTITION BY name ORDER BY dt desc) AS rn
    FROM table
    LEFT JOIN CTE ON
        table.name = CTE.name
    WHERE CTE.name IS NULL
    ) tbl
WHERE rn = 1

在不知道您的表模式或示例数据的情况下,这是对查询的胡乱猜测,但您想要的应该是可以实现的。如果要使用UTC时间,也可以使用

编辑:更新以包括

编辑2:用CTE替换GETDATE where子句,以排除在过去2天内具有dt的名称

WITH CTE AS (
SELECT
    name
FROM table
WHERE dt > GETDATE()-2
)

SELECT
    name,
    dt
FROM (
    SELECT
        name,
        dt,
        ROW_NUMBER() OVER (PARTITION BY name ORDER BY dt desc) AS rn
    FROM table
    LEFT JOIN CTE ON
        table.name = CTE.name
    WHERE CTE.name IS NULL
    ) tbl
WHERE rn = 1

我想你需要这样的东西:

SELECT Name,dt
from
(SELECT Name,MAX(dt) dt
FROM your_table
GROUP BY NAME) a
where dt < GETDATE()-2

我想你需要这样的东西:

SELECT Name,dt
from
(SELECT Name,MAX(dt) dt
FROM your_table
GROUP BY NAME) a
where dt < GETDATE()-2

请显示表格结构、样本数据和预期结果。请显示表格结构、样本数据和预期结果。但是,我有多条记录,就是说同一个名字和dt如何显示输出,选择唯一的最后一个条目唯一的名字和dtdt@andrew-obrien any luck?编辑为包含行号。我的查询输出为abc 2017-09-18 02:48:33.000,但当我搜索*name=abc时,我看到此行的最新日期存在,abc 2017-09-20 03:02:54.000我需要显示过去两天内没有新行的名称已确定。很抱歉。原始where子句只查看超过2天的记录,但没有正确排除名称。我用一个CTE更新了它。然而,这项工作,我有多个记录是相同的名称和dt如何显示输出选择唯一的最后一个条目唯一的名称和dt@andrew-obrien any luck?编辑为包含行号。我的查询输出为abc 2017-09-18 02:48:33.000,但当我搜索*name=abc时,我看到此行的最新日期已存在,abc 2017-09-20 03:02:54.000我需要显示过去2天内没有新行的名称已确定。很抱歉。原始where子句只查看超过2天的记录,但没有正确排除名称。我用CTE更新了这个。