テーブルには名前とDT
の複数のレコードが含まれていますが、名前を確認するクエリはDT
に基づいて過去2日間で確認できませんあなたのテーブルのスキーマまたはサンプルデータを知らずx日のDB問合せなし
Name DT
ABC 2017-09-17 06:02:23.000
ACD 2017-09-15 06:02:23.000
テーブルには名前とDT
の複数のレコードが含まれていますが、名前を確認するクエリはDT
に基づいて過去2日間で確認できませんあなたのテーブルのスキーマまたはサンプルデータを知らずx日のDB問合せなし
Name DT
ABC 2017-09-17 06:02:23.000
ACD 2017-09-15 06:02:23.000
は、私はあなたがこのようなものが必要だと思う:
SELECT Name,dt
from
(SELECT Name,MAX(dt) dt
FROM your_table
GROUP BY NAME) a
where dt < GETDATE()-2
こんにちは@Anaghaこのクエリの仕事は、ありがとう – Francis
これは、クエリでワイルドな推測ですが、何が欲しいのはGETDATE() functionでなんとかする必要があります。 UTC時間を使用する場合は、GETUTCDATE() functionも使用できます。
編集:ROW_NUMBER() functionを含むように更新されました。
編集2:GETDATE()where句をCTEに置き換えて、過去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
BEGIN TRAN
CREATE TABLE #CM (Name NVARCHAR(06), DT DATETIME)
INSERT INTO #CM
SELECT 'ABC','2017-09-17 06:02:23.000' UNION ALL
SELECT 'ACD','2017-09-15 06:02:23.000'
SELECT * FROM #CM
WHERE CONVERT(NVARCHAR(105),dt) < CONVERT(NVARCHAR(105),GETDATE()-2)
ROLLBACK TRAN
してください、ショーのテーブル構造、サンプルデータ、および予想される結果。 – Sami