SQL Server 2008 R2 2 つのテーブルがあります。1 つの Main レコードと、共通のキー フィールド sysid と main_id を持つ Main に関連する Notes です。(1 つのメイン レコードに多くのメモを含めることができます)
過去 30 日間にそのレコードに関連する Notes テーブルにレコードが作成されていないメイン テーブルのレコードを一覧表示したいと考えています。
メイン テーブル フィールド > file_number、sysid
ノート テーブル フィールド > note_date、main_id
検索から100の異なる提案を試みましたが、必要なものは何も得られません。以下が最も近いものだと思いますが、メモがまったく存在しないレコードのみが表示され、既存のメモはあるが過去 30 日間は何もないメイン レコードは表示されません。行を削除しても同じ結果が得られますAND db.notes.[date] > DATEADD(dd,-30,getdate()))
。
SELECT *
FROM db.main
WHERE NOT EXISTS(SELECT NULL
FROM db.notes
WHERE db.main.sysid = db.notes.main_id AND db.notes.[date] > DATEADD(dd,-30,getdate()))
ORDER BY db.main.ile_number
どんな提案でも大歓迎です。
* *クライアントは追加の列を要求しました。最後のメモの日付。したがって、彼らは x 日間メモのないメイン レコードのリストと、最後のメモの日付を求めています。